欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1680B.Robots
Robots
题目描述
有一个被划分为 行 列的场地。某些格子是空的(用 E 表示),其他格子里有机器人(用 R 表示)。
你可以同时向所有机器人发送一条指令。指令有以下四种类型之一:
- 向上移动;
- 向右移动;
- 向下移动;
- 向左移动。
当你发送一条指令时,所有机器人会同时尝试朝你选择的方向移动一步。如果某个机器人试图移出场地边界,它会爆炸;否则,每个机器人会移动到相邻的格子。
你可以按任意顺序发送任意多条指令(也可以一条都不发)。你的目标是让至少一个机器人到达场地的左上角。你能否做到这一点,并且不让任何机器人爆炸?
输入格式
第一行包含一个整数 (),表示测试用例的数量。
每个测试用例的第一行包含两个整数 和 (),分别表示行数和列数。接下来有 行,每行包含一个长度为 的字符串。每个字符要么是 E(空格),要么是 R(机器人)。
输入的额外限制:每个测试用例中,场地上至少有一个机器人。
输出格式
如果可以让至少一个机器人到达左上角,并且没有任何机器人爆炸,输出 YES。否则输出 NO。
说明/提示
样例的解释:
- 在第一个测试用例中,只需发送一条“向左移动”指令即可。
- 在第二个测试用例中,无论发送什么指令,至少有一个机器人会爆炸。
- 在第三个测试用例中,只需发送一条“向左移动”指令即可。
- 在第四个测试用例中,左上角已经有一个机器人。
- 在第五个测试用例中,依次发送“向上移动”、“向左移动”、“向上移动”三条指令,可以让一个机器人到达左上角。
- 在第六个测试用例中,无论如何移动机器人到左上角,至少会有另一个机器人爆炸。
由 ChatGPT 4.1 翻译
样例
6
1 3
ERR
2 2
ER
RE
2 2
ER
ER
1 1
R
4 3
EEE
EEE
ERR
EER
3 3
EEE
EER
REE
YES
NO
YES
YES
YES
NO
在线编程 IDE
建议全屏模式获得最佳体验
键盘快捷键
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |
第 1 行,第 1 列
0 字符
-
最近自测结果
暂未运行
最近递交结果
暂无递交记录