A4104. 【函数】【递归】阿克曼(Ackmann)函数
编程题
入门
知识点
题目描述
### 阿克曼函数定义
阿克曼(Ackmann)函数 $A(m, n)$ 是一个经典的递归函数,其定义域限定为非负整数 $m$ 和 $n$ ,且满足 $m \leq 3$ 、 $n \leq 10$ 。函数值依据参数 $m$ 和 $n$ 的取值情况,通过以下规则进行定义:
1. 当 $m = 0$ 时,函数值为 $n$ 加 $1$ ,即 $A(m, n) = n + 1$ ;
2. 当 $m$ 大于 $0$ 且 $n = 0$ 时,函数值等于 $A(m - 1, 1)$ ;
3. 当 $m$ 和 $n$ 均大于 $0$ 时,函数值由嵌套递归形式确定,即 $A(m, n) = A(m - 1, A(m, n - 1))$ 。
使用分段函数的形式,可将阿克曼函数 $A(m, n)$ 简洁表示为:
$
A(m,n)=
\begin{cases}
n + 1 & (m = 0) \\
A(m - 1,1) & (m > 0, n = 0) \\
A(m - 1,A(m,n - 1)) & (m > 0, n > 0)
\end{cases}
$
阿克曼(Ackmann)函数 $A(m, n)$ 是一个经典的递归函数,其定义域限定为非负整数 $m$ 和 $n$ ,且满足 $m \leq 3$ 、 $n \leq 10$ 。函数值依据参数 $m$ 和 $n$ 的取值情况,通过以下规则进行定义:
1. 当 $m = 0$ 时,函数值为 $n$ 加 $1$ ,即 $A(m, n) = n + 1$ ;
2. 当 $m$ 大于 $0$ 且 $n = 0$ 时,函数值等于 $A(m - 1, 1)$ ;
3. 当 $m$ 和 $n$ 均大于 $0$ 时,函数值由嵌套递归形式确定,即 $A(m, n) = A(m - 1, A(m, n - 1))$ 。
使用分段函数的形式,可将阿克曼函数 $A(m, n)$ 简洁表示为:
$
A(m,n)=
\begin{cases}
n + 1 & (m = 0) \\
A(m - 1,1) & (m > 0, n = 0) \\
A(m - 1,A(m,n - 1)) & (m > 0, n > 0)
\end{cases}
$
输入格式
输入m和n。
输出格式
函数值。
输入输出样例
输入 #1
2 3
输出 #1
9