A23518. #include<bits/stdc++.h> using namespace std; int f(int a, int n, int m) { if(a==1) return 1%m; long long ans = 1%m; while(n){ if(n&1) ans = (ans * a) % m; a = (a * a) % m; n >>= 1; } return ans; } in…
判断题
较易
知识点
题目描述
#include<bits/stdc++.h>
using namespace std;
int f(int a, int n, int m)
{
if(a==1) return 1%m;
long long ans = 1%m;
while(n){
if(n&1)
ans = (ans * a) % m;
a = (a * a) % m;
n >>= 1;
}
return ans;
}
int main()
{
int a, n, m;
cin >> a >> n >> m;
cout << f(a, n, m);
}程序的时间复杂度是 O(logn)( )
选项(单选)
答案解析
详细答案解析为会员权益,按每日次数查看。
开通 / 升级会员
上一题
下一题