注意理解:今天做pta也遇到了一个类似的题目,不过那个题目是让求非0后K位。
这里,我们先把有可能乘出来10的质因子2和质因子5全部除掉,然后就可以放心大胆的取模啦,最后由于质因子2被多除了,再乘回来就好啦。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#define ll long long
#define pr make_pair
#define pb push_back
using namespace std;
int cnt=0;
int fi(int x)
{
    while(x%2==0) x/=2,cnt++;
    while(x%5==0) x/=5,cnt--;
    return x;
}

int main(void)
{
    int n;
    scanf("%d",&n);
    int ans=1;
    for(int i=1;i<=n;i++) ans=(ans*fi(i))%10;
    for(int i=1;i<=cnt;i++) ans=(ans*2)%10;
    printf("%d\n",ans%10);
    return 0;
}