一开始以为有循环节,输出了前100项发现n>40都是0。因此,水题....
#include<cstdio> long long a[];
const long long MOD=; int main()
{
a[]=;
for(int i=; i<=; i++)
a[i]=(i*a[i-])%MOD; long long n;
while(~scanf("%lld",&n))
{
if(n<=) printf("%lld\n",a[n]);
else printf("0\n");
}
return ;
}