给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。
Input
一个数N(1 <= N <= 10^9)
Output
输出N^N的末位数字
Input示例
13
Output示例
3
明显需要用到快速幂的做法
#include <stdio.h>
int fun(int m)
{
int case1=m, n=1;
while(m)
{
if(m%2!=0)
n=((n%10)*(case1%10))%10;
m/=2;
case1=(case1%10)*(case1%10);
}
return n;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",fun(n));
return 0;
}