QOJ.ac

QOJ

时间限制: 5 s 内存限制: 512 MB 总分: 100

#12224. 康威

统计

房间里有 $M$ 个灯泡,房间外有 $N$ 个开关。在本题中,$N$ 保证为奇数。每个灯泡都有其自身的功率 $p_i$,且只能处于完全开启或完全关闭的状态。如果灯泡开启,它会为房间增加 $p_i$ 单位的照明度。

一些开关和灯泡通过电线连接。切换单个开关会改变所有与该开关相连的灯泡的状态。连接方式没有限制,这意味着任何开关都可以连接到灯泡的任意子集,反之亦然。

John 发明了一个新游戏,并邀请他的朋友 Roland 和 Patrick 来玩。Roland 喜欢光,试图使照明度尽可能高;而 Patrick 的目标恰恰相反:尽可能降低照明度。John 选择了一个值 $K$ 来决定胜负。游戏结束时,如果所有开启的灯泡的总功率大于或等于 $K$,则 Roland 获胜,否则 Patrick 获胜。游戏过程如下:

  • 开关编号从 $1$ 到 $N$。
  • 每位玩家轮流进行,每人恰好进行 $\frac{N-1}{2}$ 次移动。Roland 先手。
  • 在第 $i$ 次移动时,Roland 可以切换编号为 $2 \cdot i - 1$ 和 $2 \cdot i$ 的开关。即第一次移动时切换第 $1$ 和第 $2$ 个开关,第二次移动时切换第 $3$ 和第 $4$ 个开关,以此类推。注意,他可以选择切换这两个开关的任意子集(其中一个、两个或都不切换)。如果某个灯泡同时连接到这两个开关,那么每切换一次开关,该灯泡的状态就会改变一次。
  • Patrick 的规则完全相同,唯一的区别在于他可以切换的开关索引。在第 $i$ 次移动时,他可以切换编号为 $2 \cdot i$ 和 $2 \cdot i + 1$ 的开关。即第一次移动时切换第 $2$ 和第 $3$ 个开关,第二次移动时切换第 $4$ 和第 $5$ 个开关,以此类推。

John 喜欢看他的朋友们玩游戏,并且他已经知道了结果。他请求你编写一个程序,在假设 Roland 和 Patrick 都采取最优策略的情况下,确定每场 $T$ 局游戏中的获胜者。

输入格式

输入的第一行包含一个整数 $T$ — 测试用例的数量 ($1 \le T \le 5$)。每个测试用例描述一场独立的游戏。

每个测试用例的第一行包含三个整数 $N, M$ 和 $K$ ($3 \le N \le 33$,$N$ 为奇数,$1 \le M \le 32$,$0 \le K \le 2 \cdot 10^9$) — 开关数量、灯泡数量以及决定胜负的照明度值。

每个测试用例的第二行包含 $M$ 个整数 $l_i$ ($1 \le l_i \le 5 \cdot 10^7$) — 每个灯泡的功率。

接下来的 $N$ 行,每行包含 $M$ 个字符,描述开关与灯泡之间的连接关系。如果第 $i$ 个开关连接到第 $j$ 个灯泡,则第 $i$ 行的第 $j$ 个字符为 ‘1’,否则为 ‘0’。

输出格式

对于每个测试用例,输出一行获胜者的名字,即 “Roland” 或 “Patrick”。

样例

输入 1

2
3 2 10
10 10
01
00
11
3 5 1
1 2 3 4 5
01011
11000
10011

输出 1

Roland
Patrick

说明

在第一场游戏中,Roland 的一种最优策略如下:在第一回合,他切换第一个和第二个开关。对于 Patrick 的任何可能移动,游戏结束时恰好有一个灯泡处于开启状态,因此 Roland 获胜。

在第二场游戏中,无论 Roland 如何移动,Patrick 都可以关闭所有灯泡。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.