标签:lin getc har == long 二进制 getchar tchar 更新
\(1.\) \(Raising\) \(Modulo\) \(Numbers\)
细节:注意返回答案前取模。
inline long long readl() { long long ret=0,f=1; char ch=getchar(); while(ch>‘9‘||ch<‘0‘) { if(ch==‘-‘) f=-1; ch=getchar(); } while(ch>=‘0‘&&ch<=‘9‘) { ret=(ret<<1)+(ret<<3)+ch-‘0‘; ch=getchar(); } return ret*f; } inline long long qpow(long long a,long long b,long long mod) { long long ans=1; while(b) { if(b&1) ans=ans*a%mod; a=a*a%mod; b>>=1; } return ans%mod; } long long a,b,p; int main() { a=readl(); b=readl(); p=readl(); printf("%lld\n",qpow(a,b,p)); return 0; }
inline long long readl() { long long ret=0,f=1; char ch=getchar(); while(ch>‘9‘||ch<‘0‘) { if(ch==‘-‘) f=-1; ch=getchar(); } while(ch>=‘0‘&&ch<=‘9‘) { ret=(ret<<1)+(ret<<3)+ch-‘0‘; ch=getchar(); } return ret*f; } inline long long qpow(long long a,long long b,long long mod) { long long ans=1; while(b) { if(b&1) ans=(ans+a)%mod; a=(a<<1)%mod; b>>=1; } return ans%mod; } long long a,b,p; int main() { a=readl(); b=readl(); p=readl(); printf("%lld\n",qpow(a,b,p)); return 0; }
标签:lin getc har == long 二进制 getchar tchar 更新
原文地址:https://www.cnblogs.com/Peter0701/p/11625058.html