1 条题解
-
0
#include <iostream> #include <string.h> #include <vector> #include <bits/stdc++.h> using namespace std; int n,l=0,m,ans[1000],book[200][200]={0};char b[200][200]; int dx[4]={0,1,0,-1}; int dy[4]={1,0,-1,0}; struct point { int x;int y;int step;
}; queue<point> r; int main() { cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>b[i][j]; } } point start; start .x=1; start .y=1; start .step=1; r.push(start); book[1][1]=1; while(!r.empty()){ int x=r.front().x,y=r.front().y; if(xn&&ym){cout<<r.front().step<<endl;} for(int i=0;i<=3;i++){ int tx,ty; tx=x+dx[i]; ty=y+dy[i]; if(b[tx][ty]=='.'&&book[tx][ty]==0) {point temp; temp.x=tx; temp.y=ty; temp.step=r.front().step+1; r.push(temp); book[tx][ty]=1;
} } r.pop();
}
return 0;
}
信息
- ID
- 804
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 104
- 已通过
- 4
- 上传者