【51nod】 1004 - n^n的末位数字

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;
}




猜你喜欢

转载自blog.csdn.net/qq_41009682/article/details/79170710