SP13376 PRESIDEN - The new President

题目描述

终于到了选举新总统的时刻,你对此很激动。虽然你知道最终结果可能需要几周才能公布,但你迫不及待地想知道结果。 不知用了什么办法,你获得了每位选民的偏好列表(关于获取途径我们不关心)。每位选民把所有候选人按偏好顺序,从最喜欢到最不喜欢,进行了排序。在投票时,选民会选择其偏好列表中排名最前的候选人。例如,假设有 5 位候选人(编号为 1 到 5),某位选民的偏好列表为 \[3, 2, 5, 1, 4\],当前在竞选的候选人是 2 号和 4 号,该选民将投票给 2 号候选人。 选举过程的规则如下: 1. 有 _C_ 位候选人(编号从 1 到 _C_)和 _V_ 名选民(_V_ 一定是奇数)。 2. 选举可能包括最多两轮。第一轮由所有候选人参选。如果有一位候选人在第一轮中获得超过 50% 的选票,则他直接获胜;否则将举行第二轮,由得票最多的两位候选人竞争,总票数高者胜出,成为新总统。 3. 假定偏好列表的设置避免了出现第一轮中第二名和第三名候选人票数相同的情况。 4. 选民在两轮投票中的偏好顺序保持一致,每位选民在每轮都必须根据当前候选人情况按其偏好来投票。 根据给定的偏好列表,你需要编写程序来确定哪位候选人会胜出以及他会在哪一轮获胜。

输入格式

输入有多个测试用例。第一行是一个整数 _T_,表示测试用例的数量($1 \le T \le 100$)。接下来的每个测试用例的第一行为两个用空格分隔的整数 _C_ 和 _V_,分别表示候选人数量和选民数量($1 \le C, V \le 100$)。接下来 _V_ 行中的每一行包含 _C_ 个整数,这些整数用空格间隔,表示一位选民的偏好列表(第一个是他最偏好的候选人,最后一个是他最不偏好的候选人)。每行中的整数从 1 到 _C_,且每个数字只出现一次。

输出格式

对于每个测试用例,输出两个用空格分隔的整数。第一个整数为获胜候选人的编号(1 到 _C_),第二个整数为 1 或 2,分别表示该候选人在第一轮或第二轮获胜。 **本翻译由 AI 自动生成**