标签:
#include<iostream> #include<algorithm> #include<math.h> #include<stdio.h> #include<string.h> #include<stdlib.h> #include<stack> #include<queue> #define forp(i,n) for(int i=1;i<=n;i++) #define ptf(i) printf("%d\n",i) #define scf(i) scanf("%d",&i) const int MOD = 1000; typedef long long LL; void init(){ } LL pow_mod(LL a, LL b, LL mod){ //a^b%mod LL ans=1; a=a%MOD; while(b){ if(b&1) ans=ans*a%MOD; a=a*a%MOD; b>>=1; } return ans; } int main(){ init(); LL a, b; while(~scanf("%I64d%I64d",&a,&b)){ if(a==0&&b==0) break; printf("%I64d\n",pow_mod(a,b,MOD)); } return 0; }
裸的快速幂的题
简化后的快速幂模板
LL pow_mod(LL a, LL b){ //a^b%MOD LL ans=1; a=a%MOD; //预处理 while(b){ if(b&1) ans=ans*a%MOD; a=a*a%MOD; b>>=1; } return ans; }
标签:
原文地址:http://www.cnblogs.com/blueprintf/p/5400383.html