hdu 1061(数学)

来源:互联网 发布:vb.net sqlite 编辑:程序博客网 时间:2024/04/29 07:49

点击打开链接

对于数字0~9, 它们的N次方,我们只看最后一个数字:
0^1=0; 0^2=0; 循环周期T=1;
1^1=1; 1^2=1; 循环周期T=1;
2^1=2; 2^2=4; 2^3=8; 2^4=6 2^5=2; 循环周期T=4;
3^1=3; 3^2=9; 3^3=7; 3^4=1;3^5=3; 循环周期T=4;
4^1=4; 4^2=6; 4^3=4; 循环周期T=2;

后面的大家可以自己算,会得出一个规律:
他们的循环周期只有1,2,4这三种,所以对于源代码里的b,我们可以只算b%4次就Ok了


#include"stdio.h"int main(){int t;int n;int i,j;scanf("%d",&t);while(t--){scanf("%d",&n);i=n%10;j=n%4;if(j==0)printf("%d\n",i*i*i*i%10);else {int tt;tt=1;while(j--)tt*=i;printf("%d\n",tt%10);}}return 0;}


原创粉丝点击