#P10014. 最佳选手

最佳选手

最佳选手

Problem Description

第17届 Culinary Combat Professional Contest (CCPC) 已经结束,赛事组织者将选出本次比赛的最佳选手。 共有 nn 名选手,编号从 11nn,一共进行了 mm 场 1 vs 1 的对决:

  • ii 场对决的是选手 aia_ibib_i
  • 每场对决分为上半场和下半场:
    • 在对决的上半场,选手 aia_i 的得分为 xix_i,选手 bib_i 的得分为 yiy_i
    • 在对决的下半场,选手 aia_ibib_i 的准确得分未知,但两者得分之和为 ziz_i
    • 选手在整场对决中的得分等于上半场得分与下半场得分之和。换句话说,在第 ii 场对决中,aia_ibib_i 的可能得分分别为 xi+pix_i + p_iyi+qiy_i + q_i,其中 0pi,qizi,pi+qi=zi0 \leq p_i,q_i \leq z_i, p_i + q_i = z_i。 注意,所有得分均为 非负整数 ,并且每位选手至少参加了一场对决。 定义一位选手的关键对决为:这位选手参加的对决中,得分 最小 的对决; 一位选手的最终得分为:其在关键对决中获得的得分。如果一名选手的最终得分 严格大于 所有其他选手的最终得分,则该选手将获得最佳选手奖。 由于 mm 场对决下半场得分的不确定,最佳选手也可能不同。请找出所有可能成为最佳选手的选手。

Input

输入包含多组测试数据。 第一行包含一个整数 TT (1T2×1051\leq T\leq 2 \times 10^5),表示测试数据的组数。 对于每组测试数据: 第一行包含两个整数 nn, mm (2n1062 \leq n \leq 10^6, n2m106\lceil \frac{n}{2} \rceil \leq m \leq 10^6),表示选手数和对决数。 接下来的 mm 行,第 ii 行包含五个整数 aia_i, bib_i, xix_i, yiy_i, ziz_i (1ai,bin1 \leq a_i, b_i \leq n, aibia_i \neq b_i, 0xi,yi,zi1090 \leq x_i, y_i, z_i \leq 10^9),具体含义见题面。保证每位选手至少参加了一场对决。 保证所有测试数据中 nn 的总和 与 mm 的总和 都不超过 10610^6

Output

对于每组测试数据: 第一行输出一个整数 kk,表示可能成为最佳选手的选手数量。 第二行输出 kk 个整数,按 升序 输出所有可能成为最佳选手的选手编号。特别地,当 k=0k=0 时,输出一个空行。

Sample Input

3
3 2
1 2 2 3 3
2 3 6 7 1
3 2
1 2 2 3 3
2 3 6 7 2
3 2
1 2 2 3 6
2 3 7 7 2

Sample Output

1
3
1
3
3
1 2 3

Hint

对于第三组测试数据,33 名选手都有可能成为最佳选手。选手 11 只有在如下情况中才能成为最佳选手:

  • 在第一场对决中,选手 11 得分为 2+6=82 + 6 = 8,选手 22 得分为 3+0=33 + 0 = 3
  • 在第二场对决中,选手 22 得分为 7+2=97 + 2 = 9,选手 33 得分为 7+0=77 + 0 = 7。 在这种情况下,选手 11 的最终得分为 88,选手 22 的最终得分为 min(3,9)=3\min(3, 9) = 3,选手 33 的最终得分为 77,因此选手 11 为最佳选手。

Source

2024“钉耙编程”中国大学生算法设计超级联赛(9)