60分 Case 3&4 WA,其他AC 请问大家如何修改?
//代码由Java直接修改至C++
#include <bits/stdc++.h>
using namespace std;
void initialize(long long int waysMap[64][64], int xCoordinateHorse, int yCoordinateHorse) {
for (int i = 0; i < 64; i++) {
for (int j = 0; j < 64; j++) {
waysMap[i][j] = -1;
}
}
for (int i = 3; i < 64; i++) {
waysMap[i][2] = 1;
waysMap[2][i] = 1;
}
waysMap[2][2] = 1;
waysMap[xCoordinateHorse][yCoordinateHorse] = 0;
waysMap[xCoordinateHorse + 2][yCoordinateHorse + 1] = 0;
waysMap[xCoordinateHorse + 1][yCoordinateHorse + 2] = 0;
waysMap[xCoordinateHorse - 1][yCoordinateHorse + 2] = 0;
waysMap[xCoordinateHorse - 2][yCoordinateHorse + 1] = 0;
waysMap[xCoordinateHorse - 2][yCoordinateHorse - 1] = 0;
waysMap[xCoordinateHorse - 1][yCoordinateHorse - 2] = 0;
waysMap[xCoordinateHorse + 1][yCoordinateHorse - 2] = 0;
waysMap[xCoordinateHorse + 2][yCoordinateHorse - 1] = 0;
}
int main() {
ios::sync_with_stdio (false);
long long int ways[64][64];
int input;
cin >> input;
int xCoordinateTarget = input + 2;
cin >> input;
int yCoordinateTarget = input + 2;
cin >> input;
int xCoordinateHorse = input + 2;
cin >> input;
int yCoordinateHorse = input + 2;
initialize(ways, xCoordinateHorse, yCoordinateHorse);
for (int i = 3; i <= xCoordinateTarget; i++) {
for (int j = 3; j <= yCoordinateTarget; j++) {
if (ways[i][j] == -1) {
ways[i][j] = ways[i - 1][j] + ways[i][j - 1];
}
}
}
cout << ways[xCoordinateTarget][yCoordinateTarget];
}