输出一样却不正确

P1443 马的遍历

用$C++$吧
by wxy_god @ 2019-01-22 20:20:09


DEVCPP用户表示看不懂
by AFO蒟蒻选手 @ 2019-01-22 20:49:32


#### c++代码 ```cpp #include<bits/stdc++.h> using namespace std; int n,m,x,y,a[402][402],c[10]={0,1,2,2,1,-1,-2,-2,-1},d[10]={0,2,1,-1,-2,2,1,-1,-2}; void dfs(int x,int y,int t) { for(int i=1;i<=8;i++) { if(t>300)return ; int xx=x+c[i]; int yy=y+d[i]; if(xx>=1&&xx<=n&&yy>=1&&yy<=m&&(a[xx][yy]>t||a[xx][yy]==-1)){a[xx][yy]=t;dfs(xx,yy,t+1);} } } int main() { // freopen("horse.in","r",stdin); // freopen("horse.out","w",stdout); cin>>n>>m>>x>>y; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) a[i][j]=-1; a[x][y]=0; dfs(x,y,1); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++) printf("%-5d",a[i][j]); cout<<endl; } return 0; } ```
by AFO蒟蒻选手 @ 2019-01-22 20:50:55


思路一样
by AFO蒟蒻选手 @ 2019-01-22 20:51:10


|