acgo题库
  • 首页
  • 题库
  • 题单
  • 竞赛
  • 讨论
  • 排行
  • 团队
  • 备赛专区

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
登录
注册
题目详情题解(0)讨论(0)提交记录(0)
  • 111

    #include<bits/stdc++.h> using namespace std; int mp[50][50]; int vis[50][50]; int n,m,f; void dfs(int x,int y) { vis[x][y]=1; if(xn and ym) { f=1; return; } else{ int nx,ny; nx=x-1,ny=y; if(mp[nx][ny]==0 and nx>=1 and nx<=n and ny>=1 and ny<=m and vis[nx][ny]==0) { dfs(nx,ny); } nx=x+1,ny=y; if(mp[nx][ny]==0 and nx>=1 and nx<=n and ny>=1 and ny<=m and vis[nx][ny]==0) { dfs(nx,ny); } nx=x,ny=y-1; if(mp[nx][ny]==0 and nx>=1 and nx<=n and ny>=1 and ny<=m and vis[nx][ny]==0) { dfs(nx,ny); } nx=x,ny=y+1; if(mp[nx][ny]==0 and nx>=1 and nx<=n and ny>=1 and ny<=m and vis[nx][ny]0) { dfs(nx,ny); } } } int main(){ cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>mp[i][j]; } } dfs(1,1); if(f1) cout<<"YES"; else cout<<"NO"; return 0; }

    userId_undefined

    MLE君

    秩序白银
    22阅读
    3回复
    3点赞
首页