#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<stdlib.h> using namespace std; char a[100000],b[100000],c[100000]; int x[100000],y[100000],z[100000]; int Muti() { memset(z,0,sizeof(z)); memset(x,0,sizeof(x)); memset(y,0,sizeof(y)); int len1 = strlen(a); int len2 = strlen(b); int k =len1 + len2; for(int i=0;i<len1;i++) x[i] = a[len1-i-1] - '0'; for(int i=0;i<len2;i++) y[i] = b[len2-i-1] - '0'; for(int i=0;i<len1;i++) { for(int j=0;j<len2;j++) { z[i+j] += x[i] * y[j]; } } for(int i=0;i<=k;i++) { if(z[i]>=10) { z[i+1] += z[i] / 10; z[i] = z[i] % 10; } } int s = k; while(z[s]==0) s--; if(s<0) { memset(a,0,sizeof(a)); } else { int cont = 0; for(int j=s;j>=0;j--) { int u = z[j]; a[cont++] = (char)(u+'0'); } } } int main() { int n; scanf("%d",&n); memset(a,0,sizeof(a)); sprintf(a,"%d",1); for(int i=2;i<=n;i++) { memset(b,0,sizeof(b)); sprintf(b,"%d",i); Muti(); } printf("%s ",a); return 0; }