关于阿克曼函数
  • 板块灌水区
  • 楼主ChenZQ
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/9/12 21:26
  • 上次更新2024/9/13 13:25:26
查看原帖
关于阿克曼函数
745358
ChenZQ楼主2024/9/12 21:26

为啥我这个代码输入多少都是输出197?(除了小于等于3的)

#include <bits/stdc++.h>
using namespace std;

int dp[1000][1000];
int ack(int m,int n)
{
	if(dp[m][n]!=-1) return dp[m][n];
	if(m==0)
	{
		dp[m][n]=n+1;
		return n+1;
	}
	if(m>0 && n==0)
	{
		dp[m][n]=ack(m-1,1);
		return dp[m][n]; 
	}
	if(m>0 && n>0)
	{
		dp[m][n]=ack(m-1,ack(m,n-1));
		return dp[m][n];
	}
}
int main()
{
	int m;
	cin>>m;
	memset(dp,-1,sizeof dp);
	cout<<ack(m,m);
}
2024/9/12 21:26
加载中...