题目链接:https://www.acwing.com/problem/content/description/846/
题目如下:
#include#include #include #include using namespace std; const int N=1000; typedef pair PII; int n,m; int a[N][N]; int d[N][N]; int bfs(){ queue que; que.push({0,0}); d[0][0]=0; int dx[4]={-1,0,1,0},dy[4]={0,1,0,-1}; while(que.size()){ auto t=que.front(); que.pop(); for(int i=0;i<4;i++){ int x=t.first+dx[i]; int y=t.second+dy[i]; if(x>=0&&x =0&&y d[x][y]=d[t.first][t.second]+1;//当前点到起点的距离 que.push({x,y}); } } } return d[n-1][m-1]; } int main(){ cin>>n>>m; for(int i=0;i for(int j=0;j cin>>a[i][j]; } } //三个参数分别为首地址、值、sizeof(地址总大小),包含的头文件为#include memset(d,-1,sizeof(d)); cout<



