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; }
原文地址:http://blog.csdn.net/a809146548/article/details/44262805