为什么我开a[5][15]记忆化数组有问题,明明题目说m<=3,n<=10的呀!
代码:
#include<bits/stdc++.h>
using namespace std;
int a[5][15];
int f(int m,int n){
if(a[m][n]!=0){
return a[m][n];
}
if(m==0){
return a[m][n]=n+1;
}
if(m>0&&n==0){
return a[m][n]=f(m-1,1);
}
if(m>0&&n>0){
return a[m][n]=f(m-1,f(m,n-1));
}
}
int main(){
int m,n;
cin>>m>>n;
cout<<f(m,n);
return 0;
}