アッカーマン関数
解説
ポイント
3つの式で決まるアッカーマン関数の値A(2,2)を,式を順に当てはめて求める問題です。
考え方と解き方
左の数mが0なら右の数に1を足すだけ(式1)。右の数nが0なら,mを1下げてnを1にします(式2)。
どちらも1以上なら,まず右を1減らしたものを計算し,その結果を右に入れてmを1下げます(式3)。
いきなりA(2,2)を計算せず,m=1の場合から順に求めます。
A(1,0)=A(0,1)=2(式2,式1)
A(1,1)=A(0,A(1,0))=A(0,2)=3(式3,式1)
- A(1,2)=A(0,3)=4。nが1増えるごとに1増えるので,A(1,n)=n+2です
A(2,0)=A(1,1)=3(式2)
A(2,1)=A(1,A(2,0))=A(1,3)=5(式3,A(1,n)=n+2)
- A(2,2)=A(1,A(2,1))=A(1,5)=7。答えは ①(7)
ほかの選択肢
③(9):A(2,3)の値です。右の数を1つ進めすぎると出ます。
覚えておくこと
- 再帰の式は,小さいmから順に表を作るように求める
- A(1,n)=n+2,A(2,n)=2n+3 と規則を見つけると速い
- 式3は内側(右)を先に計算してから,mを1つ下げる
出典:令和7年度 技術士第一次試験 基礎科目 I-2-6(公益社団法人日本技術士会) ジャンル:情報・アルゴリズム