HDU 1061 快速幂

来源:互联网 发布:iphone稀奇古怪软件 编辑:程序博客网 时间:2024/06/06 03:01

HDU1061
求N^N(mod10)的值,最简单就是mod10乘
在这里试了一下快速幂的模版,注意数据开long long 或者__int64才能存下

/*************************************************************************    > File Name: HDU1061.cpp    > Author:Xingxing     > Created Time: 2016/9/20 0:24:41 ************************************************************************/#include <cstdio>#include<iostream>typedef long long LL;using namespace std;const int mod=10;LL quickpow(LL a,LL b,LL c){    LL res=1;    while(b>0){        if(b&1)            res=res*a%c;        b=b>>1;        a=(a%c)*(a%c)%c;    }    return res;}int main(){    int T;    LL N;    scanf("%d",&T);    while(T--){        scanf("%lld",&N);        LL ans;        LL c=mod;        ans=quickpow(N,N,c);        printf("%lld\n",ans);    }    return 0;}
0 0
原创粉丝点击