Input
输入包含多组测试数据,第一行是测试数据的个数T。
之后的T行,每行一个数n。(1<= n <= 1e9)
Output
输出T个n^n的个位数。
Sample Input
2
3
4
Sample Output
7
6
法一(比较好理解)
#include<iostream>
using namespace std;
const int MOD = 10;
typedef long long ll;
//快速幂取模
ll pow(ll a, ll b)
{
ll ans = 1;
a %= MOD;
while(b!=0)
{
if(b&1) ans =ans * a % MOD;
a = a * a % MOD;
b >>= 1;
}
return ans;
}
int main()
{
int t;
cin>>t;
while(t--)
{
int a;
cin >> a;
cout << pow(a, a) << endl;
}
return 0;
}