Universal Cup Judging System

Universal Cup

시간 제한: 3 s 메모리 제한: 2048 MB 총점: 100 난이도: [표시] 해킹 가능 ✓
통계

Можливо, ви знаєте, що Little Cyan Fish щороку створює багато змагань. Ну знаєте, змагання Universal Cup, змагання ICPC, олімпіади з інформатики і так далі, і так далі... Я чув, що останнім часом Little Cyan Fish дуже втомився, тому я хотів би йому допомогти.

Зокрема, я створив $n$ груп авторів задач, пронумерованих від $1$ до $n$. У $i$-й групі спочатку є $k_i$ учасників, сили яких дорівнюють цілим числам $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$. Впливом групи називається сума сил її учасників. Порожня група має вплив $0$.

Але Little Cyan Fish не довіряє учасникам, яких я для нього відібрав (що сумно). Як директор, він хоче вигнати якомога більше з них. Проте він хоче бути справедливим: щоразу, коли він виганяє учасника, цей учасник повинен мати найменшу силу у своїй групі. Формально, за одну операцію Little Cyan Fish обирає непорожню групу та звільняє одного з її учасників із найменшою силою. Якщо таких учасників декілька, він може обрати будь-кого з них.

Знаєте, учасники дуже засмутяться, коли почують, що когось звільнили, або... можливо, вони навіть піднімуть повстання! Little Cyan Fish дуже не хоче, щоб будь-яка група авторів задач стала домінуючою в цьому процесі. Тому після кожної операції вплив кожної групи повинен не перевищувати суму впливів усіх інших груп. Тобто для кожної групи $i$:

$$s_i \le \sum_{j \ne i} s_j,$$

де $s_i$ позначає поточний вплив групи $i$. Початкові групи не обов'язково задовольняють цю умову.

Знайдіть максимальну кількість учасників, яких можна звільнити, та побудуйте оптимальну послідовність операцій.

Вхідні дані

Є декілька наборів вхідних даних. Перший рядок містить одне ціле число $T$ ($1 \le T$), що вказує на кількість наборів вхідних даних.

Для кожного набору вхідних даних перший рядок містить одне ціле число $n$ ($1 \le n \le 5 \times 10^5$) — кількість груп. Кожен із наступних $n$ рядків описує одну групу: $i$-й із цих рядків починається з цілого числа $k_i$ ($1 \le k_i \le 5 \times 10^5$), за яким слідують $k_i$ цілих чисел $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$ ($1 \le a_{i,j} \le 10^9$) — сили учасників $i$-ї групи.

Гарантується, що сума $n$ за всіма наборами вхідних даних не перевищує $5 \times 10^5$, а сума $k_i$ за всіма наборами вхідних даних не перевищує $5 \times 10^5$.

Вихідні дані

Для кожного набору вхідних даних виведіть два рядки. Перший рядок має містити одне ціле число $m$ — максимальну кількість учасників, яких можна звільнити. Другий рядок має містити $m$ цілих чисел $b_1, b_2, \ldots, b_m$ ($1 \le b_i \le n$), де $b_i$ — номер групи, обраної на $i$-й операції. Якщо $m = 0$, другий рядок має бути порожнім.

Якщо існує декілька оптимальних послідовностей операцій, ви можете вивести будь-яку з них.

Приклади

Вхідні дані 1

3
4
1 1
2 2 4
2 3 4
1 8
1
1 7
2
2 1 1
2 1 1

Вихідні дані 1

4
3 2 4 1
1
1
0

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.