QOJ.ac

QOJ

시간 제한: 2.0 s 메모리 제한: 256 MB 총점: 100

#16972. 大臣们的超级大麻烦

통계

偏远国家 Stanistan 的部长们在决策时遇到了严重的问题。这一切始于几周前引入的一套决定通过哪些法案的新流程。该流程如下:在每次投票会议期间,有几项法案需要投票。每位部长通过对其中一些法案投“赞成”(yes)或“反对”(no)票来表达意见。由于用于评估实际投票的技术解决方案的设计限制,每位部长最多只能对四项不同的法案进行投票(尽管这通常不是问题,因为大多数部长只关心少数几个议题)。然后,根据这些投票,选择通过的法案,使得每位部长的意见有超过一半得到满足。

正如敏锐的读者无疑已经意识到的那样,这个过程可能会导致各种问题。例如,如果存在多种满足所有部长的可能选择,或者更糟糕的是,如果根本无法满足所有部长,该怎么办?即使部长的意见能带来唯一的选择,又该如何找到这个选择?

你的任务是编写一个程序来帮助部长们解决其中的一些问题。给定部长们的投票,程序必须找出是否可以满足所有部长,如果可以,确定在给定约束下只有唯一可能选择的那些法案的决定。

输入格式

输入包含多个测试用例。每个测试用例以整数 $B$ ($1 \le B \le 100$) 开始,表示要投票的截然不同的法案数量,以及 $M$ ($1 \le M \le 500$),表示部长的数量。接下来的 $M$ 行给出部长的投票。每行以一个整数 $k$ ($1 \le k \le 4$) 开始,表示该部长投票的法案数量,随后是 $k$ 个投票。每个投票的格式为 <bill> <vote>,其中 <bill> 是 $1$ 到 $B$ 之间的一个整数,用于标识所投票的法案,而 <vote>yn,表示部长的意见是“赞成”(yes)或“反对”(no)。没有部长会对同一项法案投票超过一次。最后一个测试用例后面是一行,包含两个零。

输出格式

对于每个测试用例,打印测试用例编号(从 1 开始),后跟处理结果。如果无法满足所有部长,结果应为 impossible。否则,结果应为一个长度为 $B$ 的字符串,其中第 $i$ 个字符为 yn?,具体取决于对第 $i$ 项法案的决定应该是“赞成”(y)、“反对”(n),还是给定的投票无法确定该法案的决定。

样例

输入样例 1

5 2 
4 2 y 5 n 3 n 4 n 
4 4 y 3 y 5 n 2 y 
4 2 
4 1 y 2 y 3 y 4 y 
3 1 n 2 n 3 n 
0 0

输出样例 1

Case 1: ?y??n 
Case 2: impossible

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.