蓝桥杯:X星球的迷宫————Python题解
目录
- 题目
- 解题思路
- Code
- Answer
题目
X星球的一处迷宫游乐场建在某个小山坡上。
它是由10x10相互连通的小房间组成的。
房间的地板上写着一个很大的字母。
我们假设玩家是面朝上坡的方向站立,则:
L表示走到左边的房间,
R表示走到右边的房间,
U表示走到上坡方向的房间,
D表示走到下坡方向的房间。
X星球的居民有点懒,不愿意费力思考。
他们更喜欢玩运气类的游戏。这个游戏也是如此!
开始的时候,直升机把100名玩家放入一个个小房间内。
玩家一定要按照地上的字母移动。
迷宫地图如下:
UDDLUULRUL
UURLLLRRRU
RRUURLDLRD
RUDDDDUUUU
URUDLLRRUU
DURLRLDLRL
ULLURLLRDU
RDLULLRDDD
UUDDUDUDLL
ULRDLUURRR
请你计算一下,最后,有多少玩家会走出迷宫?
而不是在里边兜圈子。
请提交该整数,表示走出迷宫的玩家数目,不要填写任何多余的内容。
如果你还没明白游戏规则,可以参看一个简化的4x4迷宫的解说图:
解题思路
- 关于迷宫的题目,用到深度优先搜索+迭代。
Code
# -*- coding:UTF-8 -*-
"""
@Project :每日一题
@File :迷宫2.py
@IDE :PyCharm
@Author :Kinght_123
@Date :2022/1/17 22:23
"""
ls = []
with open('maze2.txt', 'r') as fp:for line in fp.readlines():ls.append(list(line.strip()))def dfs(x, y, path): # x,y表示当前的位置,path表示路径if x < 0 or x > 9 or y < 0 or y > 9:return 1elif path > 100:return 0if ls[x][y] == 'U':return dfs(x - 1, y, path + 1)elif ls[x][y] == 'R':return dfs(x, y + 1, path + 1)elif ls[x][y] == 'D':return dfs(x + 1, y, path + 1)else:return dfs(x, y - 1, path + 1)ans = 0
for x in range(10):for y in range(10):ans += dfs(x, y, 0)
print(ans)
注意: path是用来限制迭代次数的,要不然迭代次数可能会出现超出次数的情况。
Answer
- 31
蓝桥杯:X星球的迷宫————Python题解相关推荐
- 蓝桥杯算法训练cowboys-dp-递归-python题解
cowboys(dp+递归) 问题描述 一个间不容发的时刻:n个牛仔站立于一个环中,并且每个牛仔都用左轮手枪指着他旁边的人!每个牛仔指着他顺时针或者逆时针方向上的相邻的人.正如很多西部片那样,在这一刻 ...
- 蓝桥杯青少创意编程python组
第十二届蓝桥杯青少年组国赛C++中级组 第1题 -- 第3题(python3实现) 第十二届蓝桥杯青少年组国赛C++中级组 第1题 -- 第3题(python3实现)_dllglvzhenfeng的博 ...
- 计蒜客2020蓝桥杯大学A组模拟赛题解
计蒜客2020蓝桥杯大学A组模拟赛题解 蓝桥杯的话,去年拿了C++组的国二.今年报名了新成立的Python组,不知道能不能摸到国一的鱼 模拟赛链接如下: https://www.jisuanke.co ...
- 2018年蓝桥杯A组C/C++决赛题解
2018年第九届蓝桥杯A组C/C++决赛题解 点击查看视频题解 点击查看2018年蓝桥杯A组C/C++决赛题目(不含答案) 1:三角形面积 画个图,求三角形面积,可以用外接长方形 - 其他多余区域面积 ...
- 蓝桥杯 基础练习 分解质因数 python语言
蓝桥杯 基础练习 分解质因数 python语言 描述 求出区间[a,b]中所有整数的质因数分解. 输入 输入描述: 输入两个整数a,b. 输入样例: 3 10 输出 输出描述: 每行输出一个数的分解, ...
- 2021年第十二届蓝桥杯软件类省赛python组试题及其解析。
目录 一.卡片 二.直线 三.货物摆放 四.路径 五.回路计算 六.时间显示 七.杨辉三角 八.左孩子右兄弟 九.异或数列 十.括号序列 一.卡片 本题总分:5分 [问题描述] 小蓝有很多数字卡片,每 ...
- 2021年 第十二届蓝桥杯第二期校内模拟赛题解(Java版)
时隔多日,终于会写一些简单DP了哈哈哈! 稍微改版,方便阅读,若有错,请指出 2019年 第十届蓝桥杯省赛题解(JavaB组版) 2020年 第十一届蓝桥杯第一场省赛题解(JavaB组版) 2020年 ...
- 【蓝桥杯Python组】2022年第十三届蓝桥杯省赛B组Python解题思路详解
第十三届蓝桥杯省赛B组Python解题思路详解 因为今年采用线上的举办方式进行比赛,所以组委会对题目做了一定的调整,将原来的5道填空+5道编程题变成了2道填空+8道编程题,据说是为了防止抄袭.其实题目 ...
- 蓝桥杯之算法模板题 Python版
蓝桥杯之算法模板题 Python版 文章目录 蓝桥杯之算法模板题 Python版 线段树 DP 动态规划 dp, LIS ** 01背包 完全背包 多重背包 混合背包 分组背包 区间DP 一.什么是区 ...
最新文章
- Jsp实现网上彩票销售系统
- 死锁产生的条件+排除死锁的方法
- python小游戏编程100例_经典编程100例——python版(例9例10)
- 常用的NSLOG日志打印格式
- 如何以及何时使用例外
- java按钮改变窗口大小_java – 当我们调整窗口大小时,Container中的元素如何调整?...
- 大厂技术文档:Python 基础+爬虫+数据分析+面试经精选
- 收集小型机snap日志文件步骤
- 函数-函数进阶-装饰器
- TFTP 简单文件传输协议 简介
- import * as x from 'xx' 和 import x from 'xx'
- 顺利通过2020年下工信部的系统架构设计师考试,在此感悟一下
- 外文搜索数据库小记(工科)
- 基于银河麒麟 V10 系统安装和卸载 DM8 数据库
- 内部显示不支持自定义分辨率
- 如何使用Python3解二维码和编译二维码
- 狼人杀游戏 数据库设计
- oracle12c 重启服务,OBIEE12c的服务启动/关闭命令
- 华为手机一键修改机器码信息
- 四旋翼飞行器2——自己设计四旋翼飞行器的硬件准备和基础知识
热门文章
- modbus电表数据采集方案无线远程传输
- HTML5实现DTMF(电话拨号按键信号)解码、编码,代码简单易于移植
- 计算机数字媒体专业毕业论文,数字媒体技术本科毕业论文选题.docx
- doccano(NLP标签)使用
- bios sgx需要开启吗_华硕主板BIOS解读:新手装机必备篇(必须收藏)
- 机械坑(长期更新):接触到的常用标准件,命名规则和商家
- EasyRecovery15下载量高的恢复率高的数据恢复软件
- JavaScript入门基础知识
- mysql skip 1062_MYSQL replication slave-skip-errors = 1032,1062,126,1114,1146,1048,1396
- 零基础学习3D游戏建模