欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1621A.Stable Arrangement of Rooks
Stable Arrangement of Rooks
题目描述
你有一个 的国际象棋棋盘和 个车。棋盘的行编号为 到 (从上到下),列编号为 到 (从左到右)。格子 表示第 行第 列的格子,其中 且 。
如果棋盘上的车的摆放方式满足没有任何一辆车能攻击到另一辆车,则称这种摆放方式是“好”的。
一辆车可以攻击所有与它在同一行或同一列的车。
如果一个“好”的摆放方式满足:存在一辆车可以移动到相邻的格子(即与当前格子有公共边的格子),使得摆放方式变得不是“好”的,则称这种摆放方式为“不稳定”的。否则,称为“稳定”的。这里,相邻的格子指的是有公共边的格子。
如图,在 的棋盘上有 个车的这种摆放方式是“好”的,但不是“稳定”的:可以把 的车移动到相邻的 ,此时 和 的车会互相攻击。
请你找出一种在 棋盘上摆放 个车的“稳定”摆放方式,或者报告不存在这样的摆放方式。
输入格式
第一行包含一个整数 (),表示测试用例的数量。
每个测试用例的第一行包含两个整数 和 (),分别表示棋盘的大小和车的数量。
输出格式
如果存在一种“稳定”的摆放方式,在棋盘上摆放 个车,则输出 行,每行由符号 . 和 R 组成。如果第 行第 列有车,则第 行第 个字符为 R,否则为 .。
如果有多种方案,可以输出任意一种。
如果不存在“稳定”的摆放方式,输出 。
说明/提示
在第一个测试用例中,你需要在 的棋盘上找到 个车的“稳定”摆放方式。将它们放在 和 可以得到“稳定”的摆放。
在第二个测试用例中,可以证明无法在 的棋盘上放置 个车,使其为“稳定”的摆放方式。
由 ChatGPT 4.1 翻译
样例
5
3 2
3 3
1 1
5 2
40 33
..R
...
R..
-1
R
.....
R....
.....
....R
.....
-1
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |