码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • DFS——迷宫


    迷宫

            dfs简单路径搜索

    1. #include
    2. using namespace std;
    3. #define rep(i,a,n) for(int i = a;i
    4. #define per(i,a,n) for(int i = n-1;i>=a;i--)
    5. #define pb push_back
    6. #define mp make_pair
    7. #define eb emplace_back
    8. #define all(x) (x).begin(),(x).end()
    9. #define fi first
    10. #define se second
    11. #define SZ(x) ((int)(x).size())
    12. #define yes cout<<"YES"<<'\n';
    13. #define no cout<<"NO"<<'\n';
    14. #define endl '\n';
    15. #define R register
    16. typedef vector<int> VI;
    17. typedef long long ll;
    18. typedef unsigned long long ull;
    19. typedef pair<int,int> PII;
    20. typedef double db;
    21. mt19937 mrand(random_device{}());
    22. const ll MOD=1000000007;
    23. int rnd(int x) {return mrand() % x;}
    24. ll gcd(ll a,ll b){return b?gcd(b,a%b):a;};
    25. ll lcm(int a,int b){return a*b/gcd(a,b);};
    26. int dx[4]={0,0,-1,1};
    27. int dy[4]={-1,1,0,0};
    28. int n;
    29. string g[110];
    30. int vis[110][110];
    31. int a,b,c,d;
    32. bool dfs(int x,int y){
    33. if(x<0||x>=n||y<0||y>=n||vis[x][y]||g[x][y]=='#') return 0;
    34. vis[x][y]=1;
    35. if(x==c&&y==d) return 1;
    36. rep(i,0,4){
    37. if(dfs(x+dx[i],y+dy[i])) return 1;
    38. }
    39. return 0;
    40. }
    41. int main(){
    42. ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    43. int T;
    44. cin>>T;
    45. while(T--){
    46. cin>>n;
    47. rep(i,0,n) cin>>g[i];
    48. memset(vis,0,sizeof vis);
    49. cin>>a>>b>>c>>d;
    50. if(dfs(a,b)) puts("YES");
    51. else puts("NO");
    52. }
    53. return 0;
    54. }

     

     

  • 相关阅读:
    黑马SpringBoot(P3-P7) 快速创建SpringBoot项目的方式
    一篇文章带你搞懂使用PID
    数据持久化技术——MP
    制造业数字化转型峰会,云盒子带来先进制造业数据安全解决方案
    扩展windows 10 文件夹文件路径位数
    JDK中的Set和Map解析
    自动控制原理 传递函数
    判断当前时间是否在指定时间区间(时间段)内
    MCU嵌入式AI开发笔记-视频笔记同步更新
    2023年11月15号期中测验选择题(Java)
  • 原文地址:https://blog.csdn.net/aaa7888210/article/details/127847762
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号