弹幕游戏:Ryan 最近迷上了弹幕游戏。所谓弹幕游戏,指的是玩家操控一位角色对来袭的大量敌人进行攻击,并在过程中升级、强化自我的能力,最终打败 Boss 的一类游戏...
题面描述
Ryan 最近迷上了弹幕游戏。所谓弹幕游戏,指的是玩家操控一位角色对来袭的大量敌人进行攻击,并在过程中升级、强化自我的能力,最终打败 Boss 的一类游戏。
“控制着主人公在枪林弹雨中穿行而不中弹的感觉真是太爽了!”—— Ryan作为一个资深弹幕游戏玩家, Ryan 现在已经不再执着于不中弹,了,而是把目光转移到了所谓的“擦弹”这种高端游戏方式上。
“擦弹”是指玩家紧靠子弹而又不中弹的行为。如图所示。图中“*”表示子弹,“ . ”表示空位。主人公每次可以往上下左右方向移动一格。按照箭头的走法,就可以擦到紫色的子弹,擦弹数量为 4 。
注意,一个子弹即使被擦弹多次,但只会被计 1 次。现在 Ryan 面前有一些固定不动的子弹,他想知道在不中弹的前提下,最大的擦弹数是多少。
输入数据
输入数据有多组,第一行是数据组数 T(T ≤ 50) 。每组数据的第一行为两个整数 n 和 m ,表示屏幕的规格是 nm(n 行 m 列 ) 。第二行为两个整数 x 和 y ,表示主人公起始点在 x 行 y 列。接下来 n 行是一个 nm 的矩阵,仅由 “*” 和 “.” 组成 (1 <= n, m <= 500, 1 <= x <= n, 1 <= y <= m) 。保证起始点一定没有子弹,即矩阵的 (x,y) 处一定为 “.” 。
输出数据
对每组数据在单独的一行中输出结果,格式为“ Case #k: result ” ( 冒号后有空格 ) ,表示第 k 组数据对应主人公最大的擦弹数量为 result 。
样例输入
心得:遍历的问题要想到递归、栈、循环这些。
def bfs(square, point): count = 0 points = [point] while len(points)>0: temp = points.pop() for i in range(4): x = temp[0]+dx[i] y = temp[1]+dy[i] if x>=0 and x<=len(square)-1 and y>=0 and y<=len(square[0])-1 and square[x][y]!='$': if square[x][y]=='*': count += 1 square[x][y] = '$' continue elif square[x][y]=='.': points.append([x,y]) square[x][y] = '$' continue return count T = int(input()) # [dx[i],dy[i]]对应上下左右一个格子的移动
dx = [-1,1,0,0]
dy = [0,0,-1,1]
for t in range(T): n,m = list(map(int, input().split())) x,y = list(map(int, input().split())) square = [] for i in range(n): temp = input() square.append([temp[i:i+1] for i in range(0,len(temp),1)]) point = [x-1,y-1] print("Case #%d: %d"%(t+1,bfs(square, point)));
弹幕游戏:Ryan 最近迷上了弹幕游戏。所谓弹幕游戏,指的是玩家操控一位角色对来袭的大量敌人进行攻击,并在过程中升级、强化自我的能力,最终打败 Boss 的一类游戏...相关推荐
- 职场生涯规划中必须学会的十种能力
职场生涯规划就是每个人根据自身的条件,作最佳的发展安排和,以在工作中充分了解自我的能力,发挥自我的潜能,做最好的自己.这便是职场生涯规划追求的. 职场生涯规划中必须学会的十种能力之一:学会投入 要及时 ...
- 校验码中码距与纠错能力的关系
纠错编码的基本原理 1. 基本概念 为了方便对差错编码原理进行叙述下面先介绍一些基本术语. 1. 信息码元--指进行差错编码前送入的原始信息编码. 2. 监督 ...
- 游戏中应用强化学习技术,目的就是要打败人类玩家?
来源:AI前线 作者:凌敏 采访嘉宾:黄鸿波 2016 年,DeepMind 公司开发的 AlphaGo 4:1 大胜韩国著名棋手李世石,成为第一个战胜围棋世界冠军的人工智能机器人,一时风头无两.Al ...
- java游戏最终boss烛龙_游戏中劝退玩家的变态小怪!神装扛不住它一击,难度秒杀最终BOSS?...
原标题:游戏中劝退玩家的变态小怪!神装扛不住它一击,难度秒杀最终BOSS? 各大游戏中,许多变态BOSS经常让我们头痛不已. FF15中的精金龟就是其中的一位,562万点的超高血量和防御一度成为了不少 ...
- 【华为云技术分享】10分钟快速在华为云鲲鹏弹性云服务器上部署一个自己的弹幕网站!
摘要:从零代码开始,10分钟快速开发一个可以发送弹幕的网站,并将其部署在华为云服务器上:学完本期教程,将知道如何使用Nginx.如何将自己的网站部署到云服务器上. 直播相信大家都不陌生了吧,大家经常会 ...
- 盗号***迷上DirectX,游戏玩家很无奈
盗号***迷上DirectX,游戏玩家很无奈 最近,网民柱子在论坛求救,"我天天玩儿DNF,今天用***杀毒之后,再启动游戏程序时,就提示找不到dsound.dll." 金山毒霸安 ...
- 链接:https://ac.nowcoder.com/acm/challenge/terminal来源:牛客网 kotori最近迷上了摆气球的游戏。她一共有n种气球,每种气球有无数个。她要拿出若干
牛客网一战到底题,有点小意思,估计很多人不知道为什么有60%的案例过不了. 原题链接:https://ac.nowcoder.com/acm/challenge/terminal 题目及说明: 题目描 ...
- 微信签到,弹幕在微信大屏幕上的实现,附实现效果截图
微信签到,弹幕在微信大屏幕上的实现,主要分2步: 1.获取签到人的姓名和图片 点击"{签到地址}",出现签到界面 2.在大屏幕上显示 下载地址http://www.zrscsoft ...
- 使用强化学习快速让AI学会玩贪食蛇游戏(轻量级二十分钟训练+代码)
如何让AI玩会贪食蛇,甚至比你厉害 概述 构建问题(强化学习求解的一般步骤) 环境 动作定义 状态定义 奖励设计 训练奖励值收敛图 采用第4种状态定义方法 初步训练效果 最终训练效果 模型泛化迁移能力 ...
- 让老鼠迷上玩《毁灭战士2》?这个匈牙利神经科学家做到了
本文共2100字,建议阅读5分钟 让老鼠迷上了玩游戏. 当看到马斯克带着"猪队友"亮相Neuralink发布会的时候,你想到的是什么? 当时,匈牙利神经科学家Viktor Tóth ...
最新文章
- VS遇到的各种bug
- 元宇宙不是下一代互联网,而是人类群体思维空间或梦境世界的具现
- linux shell 提示符消失 终端提示符显示-bash-4.1# 解决方法
- 系统部署常见问题汇总
- 网络知识:宽带下载网速是30MB/s,经过路由器后仅10MB/s,看完你就懂了!
- 2008R2Win7管理九DNS冗余和恢复
- 有python基础学java_Python基础学习篇
- django2.1支持的mysql版本_一文解决django 2.2与mysql兼容性问题
- java 二叉树_拼多多Java开发1234面:二叉树+负载均衡+MySQL+Redis+高并发
- POI导入数据的过程中,遇到读取以科学计数法显示的数据
- PyTorch学习—17.正则化之weight_decay与dropout
- CrossApp环境搭建
- 程序识别验证码图片(一)
- eBPF系列学习(4)了解libbpf、CO-RE (Compile Once – Run Everywhe) | 使用go开发ebpf程序(云原生利器cilium ebpf )
- swiper跳转指定slides,其他路由跳转swiper指定slides
- 我的世界rpg服务器无限点卷无限金币地址,我的世界RPG插件无限刷任何物品 | 手游网游页游攻略大全...
- 忍者必须死3突然服务器维修,《忍者必须死3》3月25日停服维护公告
- Linux编辑器-gcc/g++使用
- CentOS7安装Stegsolve不报错
- css实现盾牌的动画效果