一个数的p次方的个位数至多每四次幂一个循环
1的所有次方都是1,11的所以次方的最后一位都是1
0的所有次方都是0
5的所有次方都是5,25的所有次方的最后一位都是5
6的所有次方都是6,126的所有次方的最后一位都是6
2^1=2 2^2=4 2^3=8 2^4=6(四个一循环),同上
3^1=3 3^2=9 3^3=7 3^4=1(四个一循环)
7^1=7 7^2=9 7^3=3 7^4=1(四个一循环)
4^1=4 4^2=6(两个一循环)
8^1=8 8^2=4(两个一循环)
9^1=9 9^2=1(两个一循环)
p可能很大,而且100 mod 4 = 0 ,则只需要取p最后两位mod 4 即可,
则(一个数 % 10)的(p的最后两位 % 4)次幂的最后一位是所求数,当mod为0时,p的最后两位 mod 4 取4做计算。
示例:
n = int(input())
for _ in range(n):
x, p = input().split()
x = int(x) % 10
p = int(p[-2:]) % 4
if p == 0: p = 4
print(pow(x,p) % 10)