码迷,mamicode.com
首页 > Web开发 > 详细

HDU ACM 1061 Rightmost Digit

时间:2015-03-14 21:52:16      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:acm   c   c++   算法   快速幂   

1、每次计算只要取最后一位即可。

2、使用快速幂提高效率。


#include<iostream>   
using namespace std;

int pow(int a,int n)
{
	if(n==1)
		return a;
	else if(n%2==1)
		return (a*pow(a,n-1))%10;
	else
	{
		int tmp;

		tmp=pow(a,n>>1);
		return (tmp*tmp)%10;
	}
}

int main()  
{ 
	int T,n;

	cin>>T;
	while(T--)
	{
		cin>>n;
		cout<<pow(n%10,n)<<endl;
	}
    return 0;  
}



HDU ACM 1061 Rightmost Digit

标签:acm   c   c++   算法   快速幂   

原文地址:http://blog.csdn.net/a809146548/article/details/44262805

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!