Problem:
Factorial

Write a program which reads an integer n and prints the factorial of n. You can assume that n ≤ 20.

Input

An integer n (1 ≤ n ≤ 20) in a line.

Output

Print the factorial of n in a line.

Sample Input

5

Output for the Sample Input

120

Solution in C# (judge verdict: Accepted)

using System;
using System.Collections.Generic;
using System.Linq;

namespace AOJ
{
  class Program
  {
    public static void Main()
    {
      Console.WriteLine(Factorial(decimal.Parse(Console.ReadLine())));
    }

    static decimal Factorial(decimal n)
    {
      return Factorial(n, 1);
    }

    static decimal Factorial(decimal n, decimal acc)
    {
      if (n == 1)
        return acc;
      return Factorial(n - 1, n * acc);
    }
  }
}