n^n的末位数字 51Nod - 1004
给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。
Input
一个数N(1 <= N <= 10^9)
Output
输出N^N的末位数字
Sample Input
13
Sample Output
3
思路
这道题的方法很简单,我们发现所有的末尾数的幂最多都是四个一循环,所以找规律就可以了。
代码
#include<cstdio>
int n;
int a[10][4]={{0,0,0,0},{1,1,1,1},{2,4,8,6},{3,9,7,1},{4,6,4,6},{5,5,5,5},{6,6,6,6},{7,9,3,1},{8,4,2,6},{9,1,9,1}};
int main()
{
scanf("%d",&n);
printf("%d\n",a[n%10][(n-1)%4]);
}