#P13214. [GCJ 2015 Qualification] Ominous Omino
[GCJ 2015 Qualification] Ominous Omino
Description
一个 -omino 是由 个单位方格通过边完全连接而成的二维图形。更正式地说,-omino 是一个 的单位正方形,而 -omino 是在一个 -omino 的某一条或多条边上连接一个相邻的 单位正方形。对于本题,如果两个 -omino 通过旋转和/或翻转可以互相变换,则认为它们是相同的。例如,下面是所有可能的五种 -omino:

下面是 种可能的 -omino 中的一部分:

Richard 和 Gabriel 要玩一个游戏,规则如下,给定预先确定的 、 和 :
- Richard 可以选择任意一种可能的 -omino。
- Gabriel 必须至少使用一个该 -omino,并可以任意多次使用任意 -omino(包括 Richard 选择的那一个),将 的网格完全填满,不能有重叠或溢出。也就是说,每个格子必须被恰好一个 -omino 的单元格覆盖,且不能有 -omino 超出网格范围。Gabriel 可以随意旋转或翻转任意数量的 -omino,包括 Richard 选择的那一个。如果 Gabriel 能完全填满网格,则他获胜;否则,Richard 获胜。
给定特定的 、 和 ,Richard 能否选择一种 -omino 保证自己获胜,还是无论 Richard 选择什么,Gabriel 都必胜?
Input Format
输入的第一行包含测试用例数 。接下来的 行,每行包含三个用空格分隔的整数:、 和 。
Output Format
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 1 开始), 为 RICHARD(如果存在至少一种选择能保证 Richard 获胜)或 GABRIEL(如果无论 Richard 选择什么 Gabriel 都能获胜)。
4
2 2 2
2 1 3
4 4 1
3 2 3
Case #1: GABRIEL
Case #2: RICHARD
Case #3: RICHARD
Case #4: GABRIEL
Hint
样例解释
对于第 1 个样例,Richard 只有一种 -omino 可选——由两个单位格组成的 长条。不论 Gabriel 如何放置这个长条,都可以用另一个 长条正好填满 的网格,所以 Gabriel 获胜。
对于第 2 个样例,Richard 只能选择 的长条,但无论 Gabriel 如何放置它,都会剩下一个 的空格,无法用 -omino 填满,所以 Richard 获胜。
对于第 3 个样例,Richard 可以选择 的正方形 -omino。这个正方形无法完整放入 的网格,因此 Richard 获胜。
对于第 4 个样例,Richard 可以选择直线型 -omino 或 L 形 -omino。无论选择哪种,Gabriel 都可以用它填满网格。
数据范围
小数据集(8 分)
- 时间限制:5 秒。
- 。
- 。
大数据集(26 分)
- 时间限制:10 秒。
- 。
- 。
由 ChatGPT 4.1 翻译
京公网安备 11011102002149号