1 条题解

  • 0
    @ 2026-10-25 15:08:46

    思路

    坐标从零起,起点终点障碍与孤立区域处理。

    参考程序(C++11)

    #include <bits/stdc++.h>
    using namespace std;
    int main(){int t;cin>>t;while(t--){int n,a,b,c,d;cin>>n;vector<string>g(n);for(auto &s:g)cin>>s;cin>>a>>b>>c>>d;queue<pair<int,int>>q;vector<vector<bool>>v(n,vector<bool>(n));if(g[a][b]=='.'){v[a][b]=1;q.push({a,b});}while(!q.empty()){auto p=q.front();q.pop();int dx[]={1,-1,0,0},dy[]={0,0,1,-1};for(int z=0;z<4;z++){int x=p.first+dx[z],y=p.second+dy[z];if(x>=0&&x<n&&y>=0&&y<n&&!v[x][y]&&g[x][y]=='.'){v[x][y]=1;q.push({x,y});}}}cout<<(v[c][d]?"YES":"NO")<<'\n';}}
    
    • 1

    信息

    ID
    1115
    时间
    1000ms
    内存
    64MiB
    难度
    普及−
    标签
    递交数
    1
    已通过
    1
    上传者