5 条题解

  • -3
    @ 2022-10-6 14:54:16

    #include<bits/stdc++.h> using namespace std; bool pd; char a[101][101]; int b[101][101],k[4][2]={{1,0},{-1,0},{0,1},{0,-1}},n,m,h=1,t=1,sx,sy,ex,ey; struct que{ int x; int y; int bs; }; int main(){ struct que dl[100000]; cin>>n>>m; for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)cin>>a[i][j]; //cin>>sx>>sy>>ex>>ey; b[1][1]=1; dl[t].x=1; dl[t].y=1; dl[t].bs=1; t++; while(h<t){ for(int i=0;i<4;i++){ int tx=dl[h].x+k[i][0],ty=dl[h].y+k[i][1]; if(tx<1||tx>n||ty<1||ty>m)continue; else if(a[tx][ty]'#'||b[tx][ty]1)continue; else{ b[tx][ty]=1; dl[t].x=tx; dl[t].y=ty; dl[t].bs=dl[h].bs+1; t++; } if(txn&&tym){ pd=1; cout<<dl[t-1].bs; break; } }

    h++;
    }
    return 0;
    

    }

    信息

    ID
    429
    时间
    1000ms
    内存
    128MiB
    难度
    8
    标签
    递交数
    350
    已通过
    62
    上传者