Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Fibonacci Number

Write a program which prints $n$-th fibonacci number for a given integer $n$. The $n$-th fibonacci number is defined by the following recursive formula:

\begin{equation*}
fib(n)= \left \{
\begin{array}{ll}
1　 & (n = 0) \\
1　 & (n = 1) \\
fib(n - 1) + fib(n - 2) & \\
\end{array}
\right.
\end{equation*}

Input

An integer $n$ is given.

output

Print the $n$-th fibonacci number in a line.

Constraints

$0 \leq n \leq 44$

Sample Input 1

3

Sample Output 1

3

Solution in C# (judge verdict: Accepted)

using System;
public class Hello
{
    public static int[] dp;
    public static void Main()
    {
        // Your code here!
        int n = int.Parse(Console.ReadLine());
        dp = new int[45];
        for(int i = 0; i < dp.Length; i++) //dpを初期化
        {
            dp[i] = -1;
        }
        System.Console.WriteLine(makeFib(n));
    }
    
    public static int makeFib(int n) //動的計画法
    {
        dp[0] = 1;
        dp[1] = 1;
        for(int i = 2; i <= n; i++)
        {
            dp[i] = dp[i - 1] + dp[i - 2];
        }
        
        return dp[n];
    }
}