60分求助
查看原帖
60分求助
1218894
wuzhanghao_666楼主2024/6/19 12:41
#include<iostream>
using namespace std;
long long dp[100][100],b[100][100],mx,my,bx,by,tx,ty;
int main(){
    cin>>bx>>by>>mx>>my;
    int h[9][2]={{0,0},{2,1},{2,-1},{-2,1},{-2,-1},{1,2},{-1,2},{1,-2},{-1,-2}};
    for(int i=0;i<9;i++){
        tx=h[i][0]+mx,ty=h[i][1]+my;
        if(tx<0||ty<0||tx>bx||ty>by)continue;
        b[tx][ty]=1;
    }
    for(int i=0;i<=bx;i++){
        if(b[i][0]==0){
            dp[i][0]=1;
        }
    }
    for(int i=0;i<=by;i++){
        if(b[0][i]==0){
            dp[0][i]=1;
        }
    }
    for(int i=1;i<=bx;i++){
        for(int j=1;j<=by;j++){
            if(b[i][j]==0){
                dp[i][j]=dp[i-1][j]+dp[i][j-1];
            }
        }
    }
    cout<<dp[bx][by];
}

60分2WA

哪里错了?

2024/6/19 12:41
加载中...