我本想用黑科技(__int128)的:
#include<bits/stdc++.h>
using namespace std;
long long n,ans,a[999999];
__int128 x=1,ans1;
inline __int128 jc(unsigned long long n){
x=1;
for(int i=n;i>=1;i--) x*=i;
return x;
}
inline void print(){
int cnt=0,x=0;
while(ans1>0){
a[++x]=ans1%10;
ans1/=10;
cnt++;
}
for(int i=cnt;i>=1;i--) cout<<a[i];
return;
}
int main(){
__int128 i,j;
cin>>n;
for(i=1;i<=n;i++) ans1+=jc(i);
print();
return 0;
}
pa(75分)
这告诉我们:一定要小心:n<=50!