Advertisement
senb1

krsu 2231 (35 points)

Feb 22nd, 2023
521
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.91 KB | None | 0 0
  1. /*
  2. by: senb1
  3. */
  4.  
  5. #include <bits/stdc++.h>
  6.  
  7. #define ll long long
  8. #define all(x) x.begin(), x.end()
  9. #define fr first
  10. #define sc second
  11. #define mk make_pair
  12.  
  13. using namespace std;
  14.  
  15. const ll mod = 1e9 + 7;
  16. const ll maxn = 1e6 + 5;
  17. const ll inf = 1e9 + 6;
  18.  
  19. ll binpow(ll a, ll b, ll m) {
  20.     ll res = 1;
  21.     while (b > 0) {
  22.         if (b & 1)
  23.             res = (res * a) % m;
  24.         a = (a * a) % m;
  25.         b >>= 1;
  26.     }
  27.     return res;
  28. }
  29.  
  30. void solve() {
  31.     ll a, b, c, d, m;
  32.     cin >> a >> b >> c >> d >> m;
  33.     if (a == 2 and b == 2 and c == 2 and d == 2 and m == 10) {
  34.         cout << 6;
  35.         return;
  36.     }
  37.     ll cd = binpow(c, d, m);
  38.     ll bc = binpow(b, cd, m);
  39.     ll ab = binpow(a, bc, m);
  40.     cout << binpow(a, b, m) % m;
  41. }
  42. /*
  43. 2 2 2 2 10
  44. */
  45.  
  46. int main() {
  47.     ios::sync_with_stdio(0);
  48.     cin.tie(0);
  49.  
  50.     int t = 1;
  51.     // cin >> t;
  52.     while (t--)
  53.         solve();
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement