Dang_Quan_10_Tin

MAXPRO (HSGHN L9 2020-2021)

Dec 19th, 2021
882
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.80 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdio>
  3.  
  4. using namespace std;
  5.  
  6. using ll = long long;
  7. using ld = long double;
  8. ll a, b, c, m;
  9.  
  10. void Read()
  11. {
  12.     cin >> a >> b >> c >> m;
  13. }
  14.  
  15. /// a <= b <= c
  16. void Sort()
  17. {
  18.     if (a > b)
  19.         swap(a, b);
  20.     if (b > c)
  21.         swap(b, c);
  22.     if (a > b)
  23.         swap(a, b);
  24. }
  25.  
  26. ll Mul(ll a, ll b, ll mod)
  27. {
  28.     ll q = (ld)a * b / mod;
  29.     ll r = a * b - q * mod;
  30.     return (r + mod) % mod;
  31. }
  32.  
  33. void Solve()
  34. {
  35.     if (b > 0)
  36.         cout << Mul(b, c, m);
  37.     else if (b < 0)
  38.         cout << Mul(a, b, m);
  39.     else
  40.         cout << 0;
  41. }
  42.  
  43. int32_t main()
  44. {
  45.     ios::sync_with_stdio(0);
  46.     cin.tie(0);
  47.     cout.tie(0);
  48.     freopen("MAXPRO.INP", "r", stdin);
  49.     freopen("MAXPRO.OUT", "w", stdout);
  50.  
  51.     Read();
  52.     Sort();
  53.     Solve();
  54. }
  55.  
Advertisement
Add Comment
Please, Sign In to add comment