第一个测试点为什么RE了
#include <iostream>
using namespace std;
long long dp[100][100], n, m, x, y;
bool a[100][100];
int main() {
cin >> n >> m >> x >> y;
n++; m++; x++; y++;
dp[1][1] = 1;
a[x][y] = true;
a[x - 2][y - 1] = a[x - 2][y + 1] = a[x - 1][y + 2] = a[x + 1][y + 2] = true;
a[x + 2][y + 1] = a[x + 2][y - 1] = a[x + 1][y - 2] = a[x - 1][y - 2] = true;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
if ((i != 1 || j != 1) && !a[i][j]) dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
}
}
cout << dp[n][m];
return 0;
}