Go: package main

import (
	"bufio"
	"os"
	"strconv"
	"fmt"
)

var scanner = bufio.NewScanner(os.Stdin)

func nextInt() int {
	scanner.Scan()
	i, e := strconv.Atoi(scanner.Text())
	if e != nil {
		panic(e)
	}
	return i
}

func factorial(n int) int {
	if n == 1 {
		return 1
	}
	return n*factorial(n-1)
}
func main() {
	scanner.Split(bufio.ScanWords)
	n := nextInt()
	fmt.Println(factorial(n))
}

Python: s=int(input())
ans=1
for i in range(1,s+1):
    ans *= i

print(ans)

Python: array = [1]
for i in range(int(input())):
    array.append(array[i] * (i+1))
print(array.pop())

Python: import operator
import functools

print(functools.reduce(operator.mul, range(1, int(input())+1)))

Python: n = int(input())

def fact(n):
   ans = 1
   for n in range(n,1,-1):
      ans *= n
   return ans

print(fact(n))

Python: n = int(input())
k = 1
for j in range(1,n+1):
    k *= j
print(k)

Python: import math
a=int(input())
print(math.factorial(a))

Python: n = int(input())
def f(n):
    if n == 0 : return 1
    else : return f(n - 1) * n
print(f(n))

Python: import sys

def fact(n):
    ret = 1
    if n<1:
        return -1
    elif n==1:
        return 1
    else:
        return n*fact(n-1)

line = sys.stdin.readline()
inp = int(line)
print (fact(inp))

Python: # -*- coding:shift-jis -*-
x=input()
def f(n):
 if n==0:return 1
 return f(n-1)*n
print(f(int(n)))

Python: n = int(input())
num = 1
for i in range(n):
    num = num*(i+1)
print(num)

Python: print [1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800, 39916800, 479001600, 6227020800, 87178291200, 1307674368000, 20922789888000, 355687428096000, 6402373705728000, 121645100408832000, 2432902008176640000][input()]

Python: #coding:utf-8

import math
n = input()
print(math.factorial(n))

Python: print((lambda n:__import__("functools").reduce(lambda a,b:a*b,range(1,n+1)))(int(input())))

Python: def kj(n):
    if n==0 or n==1:return 1
    return n*kj(n-1)
print(kj(int(input())))

Python: from math import factorial
n = int(input())
print(factorial(5))

Python: import math
n = int(input())
print(math.factorial(n))

Python: # coding: utf-8
# coding: Shift_JIS
# coding: EUC-JP
# coding: cp932
import math

n = int(input())
print(math.factorial(n))

Python: # coding=utf-8


if __name__ == '__main__':
    factorial = 1
    n = int(input())
    for i in range(1, n+1):
        factorial *= i
    print(factorial)

Python: n = int(input())

ans = 1

for i in range(1, n+1):
    ans *= i

print(ans)

Python: def fact(n):
    if n == 0:
        return 1
    return n * fact(n - 1)
n = int(input())
print(fact(n))

Python: __author__ = 'hayato.osanai'
import sys
import math
for line in sys.stdin:
    n = int(line)
    print(math.factorial(n))
    break

Python: def factorial(n):
    if n == 1:
        return 1
    return n * factorial(n - 1)

n = int(input())
print(factorial(n))

Python: n=int(input())
import math

print(math.factorial(n))

Python: def f(n):
    return f(n - 1) * n if n > 0 else 1

print(f(int(input())))

Python: s = int(input())
k = 1
for i in range(2,s+1):
    k *= i
print(k)

Python: from math import factorial
n = int(input())
print(factorial(n))

Python: n = int(input())
ans = 1
for i in range(1, n + 1):
    ans *= i
print(ans)

Python: def factorial(n):
  if n == 1:
    return 1
  else:
    return n*factorial(n-1)

n = int(input())
print(factorial(n))

Python: import math
n = int(input())
print(math.factorial(n))

Python: import math
if __name__ == '__main__':

	n = int(input())

	print(math.factorial(n))

Python: # -*- coding:utf-8 -*-

def main():
    n=int(input())
    count=n
    a=1

    while count!=1:
        a*=count
        count-=1

    print(a)
        
if __name__ == '__main__':
    main()

Python: factorial= 1
number= int(input("Enter a number:"))

for r in range (1,number+1):
    factorial*=r

print(factorial)

Python: n=int(input())
A=1
for i in range(1,n+1):
    A*=i
print(A)

Python: import sys
from functools import reduce
n = int(sys.stdin.readline().rstrip())
print(reduce(lambda a,b:a*b,range(1,n+1)))

Python: from functools import reduce
from operator import mul
print(reduce(mul, range(1, int(input()) + 1), 1))

Python: n = int(input())

base = 1
for i in range(n):
    base *= i + 1

print(base)

Python: import math

def run():
    n = int(input())
    print(math.factorial(n))

if __name__ == '__main__':
    run()

Python: a=1
for i in range(1,int(input())+1):a*i
print(a)

Python: def fac(n):
    if n == 0:
        return 1
    return n * fac(n - 1)


def main():
    n = int(input())
    print(fac(n))


if __name__ == '__main__':
    main()

Python: # AOJ 0019 Factorial
# Python3 2018.6.14 bal4u

import math
print(math.factorial(int(input())))

Python: import math
print(math.factorial(int(input())))

Python: import sys
import math as mas

n=int(input())
a=1
for i in range(n):a*=i+1
print(a)

#for i in sys.stdin:
#	a,b=map(int,i.split())
#	print(gcd(a,b),lcm(a,b))

Python: from __future__ import (absolute_import, division, print_function,
                        unicode_literals)
from sys import stdin
from math import factorial
print(factorial(int(stdin.readline())))

Python: # -*- coding:utf-8 -*-
n = int(input())
m = 1
for i in range(1,n+1):
    m = m*i

print(m)

Python: import math
print(math.factorial(int(input())))

Python: import math
print(math.factorial(int(input())))

Python: import math
print(math.factorial(int(input())))

Python: a = int(input())
res = 1

for i in range(a, 1, -1):
    res *= i

print(res)

Python: n = int(input())
key = 1
while n:
    key *= n
    n -= 1
print(key)

Python: def func(num):
    if num<=1:
        return 1

    return num*func(num-1)

n=int(input())
print(func(n))

Python: from math import factorial

if __name__ == '__main__':
    n = (int)(input())
    print(factorial(n))

Python: ret = 1
for i in range(2, int(input()) + 1):
    ret *= i
print(ret)

Python: import math
print(math.factorial(int(input())))

Python: def factorial(n):
    if n==1:
        return 1
    else:
        return n*factorial(n-1)
N=int(input())
print(factorial(N))

Python: from math import factorial
n = int(input())
print (factorial(n))

Python: def f(x):
  if x == 0:
    return 1
  else:
    return x * f(x-1)
n = int(input())
print(f(n))

Python: print([0,1,2,6,24,120,720,5040,40320,362880,3628800,39916800,479001600,6227020800,87178291200,1307674368000,20922789888000,355687428096000,6402373705728000,121645100408832000,2432902008176640000][int(input())])

Python: (lambda n:__import__("functools").reduce(lambda a,b:a*b,range(1,n+1)))(int(input()))

Python: from functools import reduce
print(reduce(lambda x, y: x*y, [x for x in range(1, int(input())+1)]))

Python: def factorial(n):
    if n == 1:
        return 1
    else:
        return n * factorial(n-1)
n=input()
print(factorial(int(n)))

Python: n = int(input())
ans = 1

while n > 1:
	ans *= n
	n -= 1

print(ans)

Python: print(["1","1","2","6","24","120","720","5040","40320","362880","3628800","39916800","479001600","6227020800","87178291200","1307674368000","20922789888000","355687428096000","6402373705728000","121645100408832000","2432902008176640000","51090942171709440000"][int(input())])

Python: # Aizu Problem 0019: Factorial
#
import sys, math, os

# read input:
PYDEV = os.environ.get('PYDEV')
if PYDEV=="True":
    sys.stdin = open("sample-input.txt", "rt")


print(math.factorial(int(input())))

Python: import math
print(math.factorial(int(input())))

Python: n = input()
ans = 1
for i in range(1, n + 1):
    ans *= i
print(ans)

Python: def main():
    n = int(input())

    print(fact(n))

def fact(i):
    if i == 0:
        return 1

    return i * fact(i - 1)

if __name__ == '__main__':
    main()

Python: def fact(n):
    if(n==0):
        return 1
    return n * fact(n-1)

if __name__ == '__main__':
    n = int(input())
    print(fact(n))

Python: n = int(input())
ans = 1
for i in range(2, n+1) :
    ans *= i
print(ans)

Python: import math
print(math.factorial(int(input())))