1 条题解
-
0
#include <bits/stdc++.h> using namespace std; int bx, by, mx, my; // B点坐标(bx,by) 马坐标(mx,my) long long f[25][25]; // 返回是否被马统治 bool check(int x, int y) { if (abs(x - mx) == 1 && abs(y - my) == 2 || abs(x - mx) == 2 && abs(y - my) == 1) return true; if (x == mx && y == my) return true; return false; } int main() { cin >> bx >> by >> mx >> my; for (int i = 0; i <= bx; i++) for (int j = 0; j <= by; j++) { if (check(i, j)) f[i][j] = 0; else if (i == 0 && j == 0) f[i][j] = 1; else if (i == 0) f[i][j] = f[i][j - 1]; // 第一行 else if (j == 0) f[i][j] = f[i - 1][j]; // 第一列 else f[i][j] = f[i - 1][j] + f[i][j - 1]; } cout << f[bx][by]; return 0; }
- 1
信息
- ID
- 533
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 5
- 标签
- 递交数
- 48
- 已通过
- 19
- 上传者