題目連結:階乘
#include <bits/stdc++.h>
using namespace std;
int n,sum1,sum2;
int cal(int x){
while(x%2 == 0){
sum1++;
x/=2;
}
while(x%5 == 0){
sum2++;
x/=5;
}
return x;
}
int quick_pow(int a,int b){
int ans = 1;
while(b){
if(b&1) ans = (ans*a)%10;
a = (a*a)%10;
b>>=1;
}
return ans;
}
int main(){
ios::sync_with_stdio(false);
while(~scanf("%d",&n)){
sum1 = sum2 = 0;
int p = 1;
for(int i = 1;i <= n;i++)
p *= cal(i),p %=10;
int ans = (quick_pow(2,sum1-sum2)*p)%10;
printf("%d\n",ans);
}
return 0;
}