#include<stdio.h>
#include<string.h>
const int maxn = 3000;

int f[maxn];

int main()
{
   int i,j,n;
   memset(f,sizeof(f),0);
   scanf("%d",&n);
   f[0] = 1;

   for(i = 2; i <= n; i++)
   {
       int c = 0;
       for(j = 0; j < maxn; j++)
       {
           int s = f[j]*i + c;
           f[j] = s%10;
           c = s/10;
       }
   }

   for(j = maxn-1; j>=0; j--)
   {
       if(f[j])
       {
           break;
       }
   }

   for(i = j; i >= 0; i--)
   {
       printf("%d",f[i]);
   }
   printf("\n");
   return 0;
}