伪ackermann函数
描述
小明在看数学书的时候看到了一个叫ackerman的数学函数,感觉非常神奇,于是他写了几个小数据算了一下,发现怎么也算不出来。无奈的他小小的修改了一下函数,发现变的简单许多。可是他现在想要得到的结果有很多,你能帮他吗?该函数如下:
输入
输入第一行一个整数T,表示小明询问你的次数。(T \le 100T≤100)
接下来的T行每行两个整数M,N。(0 \le M,N \le 10000≤M,N≤1000)
输出
对每个M,N输出相应的A(M,N)的值,每个值输出一行。
输入样例 1
3 1 1 22 15 23 21
输出样例 1
1 125 232
#include<stdio.h>
int A_M_N_fun(int m,int n)
{
if(m==0&&n>0)
return n+1;
if(m>0&&n==0)
return A_M_N_fun(m-1,1);
if(m>0&&n>0)
return A_M_N_fun(m-1,n-1)+n;
if(m==0&&n==0)
return 0;
return 0;
}
int main()
{
int N;
scanf("%d",&N);
while(N--){
int m,n;
scanf("%d%d",&m,&n);
printf("%d\n",A_M_N_fun( m,n));
}
return 0;
}