public class Factorial {
static long sum=0;
static long factorial=1;
public static void main(String [] args){
	java.util.Scanner in = new java.util.Scanner(System.in);
	int count = in.nextInt();
	for(int a=1; a<=count; a++){
	factorial=factorial*a;
	}
	System.out.println(factorial);
}
}
/*递归求阶乘*/
public class RecursionRequestFactorial {
public long factorial(int request_number){
	long value=0;
	if(request_number ==1 || request_number ==0){
		value =1;
	}else if(request_number > 1){
		value= request_number*factorial(request_number-1);
	}
	return value;
}
public static void main(String [] args){
	java.util.Scanner in = new java.util.Scanner(System.in);
	int request_number = in.nextInt();
	RecursionRequestFactorial start = new RecursionRequestFactorial();
	System.out.println(start.factorial(request_number));
}
}