数论基础:
1.快速幂
借阅别的博客:https://blog.youkuaiyun.com/java_c_android/article/details/55802041#commentBox
#include <stdio.h>
#include <stdlib.h>
#define k 1000000007
long long PowerMod(long long a,long long b,long long c)
{
int ans=1;
a=a%c;
while(b>0)
{
if(b%2==1)
ans=(ans*a)%c;
b/=2;
a=(a*a)%c;
}
return ans;
}
int main(){
long long a;long long b;
while (~(scanf("%lld %lld",&a,&b)))
{
PowerMod(a,b,k);
printf("%lld\n",PowerMod(a,b,k));
}
return 0;
}
QDUOJ上的例题
欧几里得部分听的太迷糊。