求助 40分 (WA AC WA WA AC)
查看原帖
求助 40分 (WA AC WA WA AC)
1431790
Urbane_T_Rex楼主2024/10/19 23:21
#include <iostream>
using namespace std;
bool check(int p, int r, int n, int m){
    //0 1 0 1 0
    //1 0 0 0 1
    //0 0 1 0 0
    //1 0 0 0 1
    //0 1 0 1 0
    //p-1 r-2
    //p-2 r-1
    //p+1 r-2
    //p+2 r-1
    //p-1 r+2
    //p-2 r+1
    //p+1 r+2
    //p+2 r+1
    //p r
    //(n==&&m==)||
    return (
    (n==p-1&&m==r-2)||
    (n==p-2&&m==r-1)||
    (n==p+1&&m==r-2)||
    (n==p+2&&m==r-1)||
    (n==p-1&&m==r+2)||
    (n==p-2&&m==r+1)||
    (n==p+1&&m==r+2)||
    (n==p+2&&m==r+1)||
    (n==p&&m==r)
            );
}
int main() {
    int n,m;
    cin>>n>>m;
    int p,r;
    cin>>p>>r;
    unsigned long long pre[n+1][m+1];
    for(int i=0;i<=n;i++)pre[i][0]=1;
    for(int i=1;i<=m;i++)pre[0][i]=1;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            if(check(p,r,i,j)){
                pre[i][j]=0;
                continue;
            }
            pre[i][j]=pre[i-1][j]+pre[i][j-1];
        }
    }
    /*Print map
    for(int i=0;i<=n;i++){
        for(int j=0;j<=m;j++){
            cout<<pre[i][j]<<" ";
        }
        cout<<endl;
    }
     */
    cout<<pre[n][m]<<endl;
    return 0;
}
2024/10/19 23:21
加载中...