取a的最后一位0-9,发现乘方个位数有周期关系(可以证明不大于4),找到周期和周期里对应的数,对于b直接查找即可
#include<stdio.h>
int T[5];
int main()
{
int a,b,i,j,temp,t,d;
while(~scanf("%d%d",&a,&b))
{
t = 0;
temp = 1;
a %= 10;
if(a==1)
{
printf("1\n");
continue ;
}
d = a;
while(temp != a)
{
T[t++] = d;
temp = (d*a)%10;
d = temp;
}
t = (b%t==0?t-1:b%t-1);
printf("%d\n",T[t]);
}
return 0;
}