2RE+3WA
查看原帖
2RE+3WA
1401899
aikepudelizhi楼主2024/8/20 16:57
#include<iostream>
using namespace std;
int ans=0,n,m;
int a[100][100]={{1}},b[100][100];
int fx[2][2]={{0,1},{1,0}};
void dfs(int x,int y){
    if(x==n&&y==m){
        ans++;
        return ;
    }
    b[x][y]=1;
    for(int i=0;i<=1;i++){
        int nx=x+fx[i][0],ny=y+fx[i][1];
        if(nx<=n&&ny<=m&&b[nx][ny]==0&&a[nx][ny]==1){
            b[nx][ny]=1;
            dfs(nx,ny);
            b[nx][ny]=0;
        }
    }
    b[x][y]=0;
}
int main(){
    int x,y;
    cin>>n>>m>>x>>y;
    n+=1,m+=1,x+1,y+1;
    a[x][y]=0;
    a[x+1][y+2]=0;
    a[x-1][y+2]=0;
    a[x+1][y-2]=0;
    a[x-1][y-2]=0;
    a[x+2][y+1]=0;
    a[x-2][y+1]=0;
    a[x+2][y-1]=0;
    a[x-2][y-1]=0;
    dfs(1,1);
    cout<<ans;
    return 0;
}
2024/8/20 16:57
加载中...