标签:inter sig open sep included ini display class different
Time Limit: 1000MS | Memory Limit: 30000K | |
Total Submissions: 8606 | Accepted: 5253 |
Description
Input
Output
(A1B1+A2B2+ ... +AHBH)mod M.
Sample Input
3 16 4 2 3 3 4 4 5 5 6 36123 1 2374859 3029382 17 1 3 18132
Sample Output
2 13195 13
Source
1 #include<stdio.h> 2 #include<string.h> 3 #define ll long long 4 int read(); 5 ll poww(int,int); 6 int n,M; 7 int main(){ 8 n=read(); 9 for(int i=1;i<=n;i++){ 10 M=read();int H=read(); 11 ll an=0; 12 for(int j=1;j<=H;j++){ 13 int a=read(),b=read(); 14 an=an+poww(a%M,b)%M; 15 } 16 printf("%lld\n",an%M); 17 } 18 return 0; 19 } 20 ll poww(int a,int b){ 21 long long base=a,an=1; 22 while(b){ 23 if(b&1) an=(an*base)%M; 24 base=(base*base)%M; 25 b=b>>1; 26 } 27 return an; 28 } 29 int read(){ 30 int ans=0,f=1;char c=getchar(); 31 while(‘0‘>c||c>‘9‘){if(c==‘-‘)f=-1;c=getchar();} 32 while(‘0‘<=c&&c<=‘9‘)ans=ans*10+c-48,c=getchar();return ans*f; 33 }
poj Raising Modulo Numbers 快速幂模板
标签:inter sig open sep included ini display class different
原文地址:http://www.cnblogs.com/lpl-bys/p/7616527.html