20分……求助
查看原帖
20分……求助
658798
JZXP楼主2023/7/10 21:09
#include <bits/stdc++.h>
using namespace std;
const int fx[] = {0, -2, -1, 1, 2, 2, 1, -1, -2};
const int fy[] = {0, 1, 2, 2, 1, -1, -2, -2, -1};
bool s[410][410] = {};
long long f[410][410] = {}; 
int main() {
    int bx, by, cx, cy;
    cin >> bx >> by >> cx >> cy;
    bx += 2;
    by += 2;
    cx += 2;
    cy += 2;
    f[2][1] = 1; 
    s[cx][cy] = true;
    for (int i = 1; i < 8; i++) 
    {
        s[cx + fx[i]][cy + fy[i]] = true;
    }
    for (int i = 2; i <= bx; i++) 
    {
        for (int j = 2; j <= by; j++) 
        {
            if (s[i][j]) continue;
            else
                f[i][j] = f[i - 1][j] + f[i][j - 1];
        }
    }
    cout << f[bx][by] << endl;
    return 0;
}

2023/7/10 21:09
加载中...