原题链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1004
思路:快速幂
AC代码:
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1000005;
int a[50005];
int qpow(int a, int b) {
int ans = 1;
while (b) {
if (b & 1) ans = 1LL * a * ans % 10;
b >>= 1;
a = 1LL * a *a % 10;
}
return ans;
}
int main() {
int n;
scanf("%d", &n);
printf("%d\n", qpow(n, n));
return 0;
}