#include<iostream>
#include<cstring>
using namespace std;
const int N=60,M=1010;
int n,a[N][M],len[N],x[N],maxx=-1,sum[M];
int main(){
scanf("%d",&n);
for(int i=1;i<=n;++i){
a[i][1]=len[i]=1;
x[i]=0;
for(int k=2;k<=i;++k){
for(int t=1;t<=len[i];++t){
a[i][t]=a[i][t]*k+x[i];
if(a[i][len[i]]>10)len[i]++;
x[i]=a[i][t]/10;
a[i][t]%=10;
}
}maxx=max(maxx,len[i]);
}int q=0;
for(int j=1;j<=maxx;++j){
for(int i=1;i<=n;++i){
sum[j]+=a[i][j];
}sum[j]+=q;
q=sum[j]/10;
sum[j]%=10;
}
for(int i=maxx;i>0;--i)cout<<sum[i];
return 0;
}