为什么一开始要用dfs,我是傻逼
#include<iostream>
using namespace std;
const int N = 100;
int A[N][N];
int dp[N][N];
// int res, n, m;
// bool vis[N][N];
// void dfs(int a, int b){
// if(a > n || b > m || (a % 2 ==0 && b % 2 == 0)) return ;
// vis[a][b] = 1;
// if(a == n && b == m) res ++;
// dfs(a + 1, b);
// dfs(a, b + 1);
// vis[a][b] = 0;
// }
int main(){
int n , m;
cin >> n >> m;
for(int i = 1; i <= n; i ++){
for(int j = 1; j <= m; j ++){
if(i % 2 == 0 && j % 2 == 0) dp[i][j] = 0;
else if(i == 1 && j == 1){
dp[i][j] = 1;
}
else{
dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
}
}
}
cout << dp[n][m];
return 0;
}