n^n的末位数字
给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。
Input
一个数N(1 <= N <= 10^9)
Output
输出N^N的末位数字
Sample Input
13
Sample Output
3
主要考察快速幂的写法.
AC代码:
#include<stdio.h>
int qik(int n,int m){
int base=1;
n %= 10;
while(m!=1){
if(m%2==1){
base = base*n%10;
n = n*n%10;
m /= 2;
}
else{
n = n*n%10;
m /= 2;
}
}
return n*base%10;
}
int main(){
int n;
while(scanf("%d",&n)==1){
printf("%d\n",qik(n,n));
}
return 0;
}