A - Wikipedia Editorial /

Time Limit: 2 sec / Memory Limit: 64 MB

問題文

PA 君はある日,Wikipediaアッカーマン関数という関数に出会った. Wikipedia によると,アッカーマン関数 A(m, n) は次のように再帰的に定義される関数である.

  • A(0, n) = n+1 (n ≥ 0)
  • A(m, 0) = A(m-1, 1) (m ≥ 1)
  • A(m, n) = A(m-1, A(m, n-1)) (m, n ≥ 1)

アッカーマン関数は与える数が大きくなると関数の値が爆発的に大きくなることで有名である.PA 君はアッカーマン関数の値を試しに手で計算しようとしたが,あまりに大変ですぐに諦めてしまった. あなたのタスクは,PA 君の代わりにアッカーマン関数の値を計算することである.

入力形式

入力は以下の形式で与えられる.

m n 

m, n はそれぞれアッカーマン関数の 第一引数, 第二引数 である.

出力形式

A(m, n) の値を 1 行で出力せよ.

制約

  • 0 ≤ m ≤ 3
  • 0 ≤ n ≤ 60
  • 入力値はすべて整数である.

入出力例

入力例 1

2 3

出力例 1

9

入力例 2

3 45

出力例 2

281474976710653
Writer: 花田裕一朗,小浜翔太郎
Tester: 楠本充

Source Name

KUPC 2012 Practice