最基本的快速幂
1 #include <bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 int qmi(int a, int b, int p) { 5 int ans = 1 % p; 6 while (b) { 7 if (b & 1) { 8 ans = (ll)ans * a % p; 9 } 10 a = (ll)a * a % p; 11 b >>= 1; 12 } 13 return ans; 14 } 15 int main() { 16 int a, b, p; 17 cin >> a >> b >> p; 18 cout << qmi(a, b, p) << endl; 19 return 0; 20 }