游戏dfs

# include & ltcstdio & gt# include & ltcstring & gt使用命名空间stdint dx[]={-1,0,1,0 };int dy[]={0,1,0,-1 };int a[1000][1000];int m,n;void init(){ freopen("maze.in "," r ",stdin);freopen("maze.out "," w ",stdout);}void readdata(){ scanf("%d%d ",& ampm & amp;n);for(int I = 0;我& ltm;i++){ for(int j = 0;j & ltn;j++) { scanf("%d ",& ampa[I][j]);} }}void dfs(int x,int y){ if(x = = m-1 & amp;& ampy = = n-1){ for(int I = 0;我& ltm;i++){ for(int j = 0;j & ltn;j++) { printf("%d ",a[I][j]);} printf(" \ n ");} printf(" \ n ");} for(int I = 0;我& lt4;i++){ int NX = x+dx[I];int ny = y+dy[I];if(NX & gt;= 0 & amp& ampnx & ltm & amp& ampny & gt= 0 & amp& ampny & ltn & amp& ampa[NX][ny]= = 0){ a[NX][ny]= 8;dfs(纽约NX);a[NX][ny]= 0;} }}

void work(){ a[0][0]= 8;dfs(0,0);}

int main(){ init();read data();work();返回0;}