POJ 1995
簡單的快速冪取模題
但要注意由于a可能很大,相乘會超范圍,所以乘前要先模
#include <iostream> #include <cstdio> using namespace std;int quick(int a,int b,int m){int ans=1;a%=m;while(b){if(b&1){ans=(ans*a)%m;b--;}a=(a*a)%m;b/=2;}return ans; }int main(){int t;scanf("%d",&t);int m,n; int ans,a,b;while(t--){ans=0;scanf("%d",&m);scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d%d",&a,&b);ans=(ans+quick(a,b,m))%m;}printf("%d\n",ans%m);}return 0; }
轉載于:https://www.cnblogs.com/jie-dcai/p/3946841.html
總結
- 上一篇: 索引访问方法及索引优化
- 下一篇: 给定两个字符串,确定其中一个字符串的字符