| 记录编号 | 598198 | 评测结果 | AAAAAAAAAA | ||
|---|---|---|---|---|---|
| 题目名称 | 1130.取余运算 | 最终得分 | 100 | ||
| 用户昵称 | 是否通过 | 通过 | |||
| 代码语言 | C++ | 运行时间 | 0.028 s | ||
| 提交时间 | 2025-01-22 17:14:55 | 内存使用 | 3.28 MiB | ||
#include <iostream>
#include <cstdio>
using namespace std;
long long a,n,p;
long long f(long long x){
if(x==1) return a;
if(x==0) return 1;
long long t=f(x/2);
if(x%2==0){
return (t*t)%p;
}else{
return (((t*t)%p)*a)%p;
}
}
int main(){
freopen("dmod.in","r",stdin);
freopen("dmod.out","w",stdout);
cin>>a>>n>>p;
cout<<f(n);
return 0;
}