80分,求调

B3625 迷宫寻路

Deutschland_Ball @ 2024-07-20 16:20:20

#include <bits/stdc++.h>
using namespace std;
typedef long long int lint;
const int N=106;
struct node{
    int x,y;
}q[N*N];
int n,m,head,tail;
char mp[N][N];
bool mk[N][N],flag;
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++
        ){
                cin>>mp[i][j];
    }
    }
    head=tail=1;
    q[tail].x=1,q[tail].y=1;
    tail++;
    int dx[5]={0,-1,0,1},dy[5]{-1,0,1,0};
    while(head<tail)
    {
        for(int i=0;i<4;i++)
        {
            int tx=q[head].x+dx[i];
            int ty=q[head].y+dy[i];
            if(tx<1||tx>m||ty<1||ty>n)
                continue;
            if(mp[tx][ty]!='#'&&mk[tx][ty]==false
            ){
                q[tail].x=tx,q[tail].y=ty;
                tail++;
                mk[tx][ty]=true;
            }
            if(tx==m&&ty==n)
            {
                flag=true;
                break;
            }
        }
        if(flag==true){
            break;
            }
        head++;
    }
    if(flag) cout<<"Yes";
    else cout<<"No";
    return 0;

}

by wuyu6688 @ 2024-09-23 21:15:31

@Deutschland_Ball 不是老弟你有啥实力


by Deutschland_Ball @ 2024-10-05 09:18:51

@wuyu6688 伪人发的 @wuyu6688


|