整数快速幂

    xiaoxiao2021-12-14  25

    刚学的快速幂,做了道基础题(hdu1061)。 公式:a^b%c=(a%c)^b%c 思想:将b转化为二进制状态。b/2相当于二进制数右移。

    #include<stdio.h> int N,n; int quickpow(int a,int b,int mod){//二进制模拟乘 int ans = 1; for( ; b>0; b/=2){ if(b%2){ ans *= a; ans %= mod; } a = a*a%mod; } return ans; } int main() { scanf("%d",&N); while(N--) { scanf("%d",&n); printf("%d\n",quickpow(n,n,10)); } }
    转载请注明原文地址: https://ju.6miu.com/read-971348.html

    最新回复(0)