C++-POJ1995-Raising Modulo Numbers[快速幂]

 1 #include <cstdio>
 2 typedef long long ll;
 3 int quick_pow(ll a,ll b,ll mod){
 4     ll ans=1;
 5     for(;b;a=(a*a)%mod,b>>=1)if(b&1)ans=(ans*a)%mod;
 6     return ans;
 7 }
 8 int main(){
 9     int z,m,h,a,b,ans;
10     for(scanf("%d",&z);z--;){
11         scanf("%d%d",&m,&h),ans=0;
12         while(h--)scanf("%d%d",&a,&b),ans=(ans+quick_pow(a,b,m))%m;
13         printf("%d\n",ans);
14     }
15     return 0;
16 }

 

posted @ 2020-02-23 15:30  墨鳌  阅读(164)  评论(0编辑  收藏  举报