60分求助
查看原帖
60分求助
1256640
renjiawei楼主2024/1/9 18:50
#include<iostream>
using namespace std;
long long map[101][101];
long long ex,ey,hx,hy;
bool pd(long long i,long long j){
    long long di[9]={-2,-2,-1,-1,1,1,2,2};
    long long dj[9]={1,-1,-2,2,2,-2,1,-1};
    for(long long k=0;k<9;k++){
        if(i+di[k]==hx&&j+dj[k]==hy){
            return false;
        }
    }
    return true;
}
int main(){
    cin>>ex>>ey>>hx>>hy;
    if(pd(1,1)==false){
        cout<<0;
        return 0;
    }
    map[0][0]=1;
    for(int i=0;i<=ex;i++){
        for(long long j=0;j<=ey;j++){
            if(pd(i,j)==false) continue;
            if(i==0||j==0){
                map[i][j]=1;
                continue;
            }
            map[i][j]+=map[i-1][j];
            map[i][j]+=map[i][j-1];
        }
    }
    cout<<map[ex][ey];
    return 0;
}

代码60分,样例能过,求帮助

2024/1/9 18:50
加载中...