Universal Cup Judging System

Universal Cup

実行時間制限: 3 s メモリ制限: 2048 MB 満点: 100 難易度: [表示] ハック可能 ✓
統計

Być może wiesz, że Little Cyan Fish co roku tworzy mnóstwo konkursów. Wiesz, konkursy Universal Cup, konkursy ICPC, Olimpiady Informatyczne i tak dalej, i tak dalej... Słyszałem, że Little Cyan Fish jest ostatnio bardzo zmęczony, więc chciałbym mu pomóc.

Dokładniej mówiąc, utworzyłem $n$ grup układających zadania, ponumerowanych od $1$ do $n$. $i$-ta grupa początkowo liczy $k_i$ członków, których siły są liczbami całkowitymi $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$. Wpływem grupy nazywamy sumę sił jej członków. Pusta grupa ma wpływ równy $0$.

Jednak Little Cyan Fish nie ufa członkom, których dla niego wybrałem (co jest smutne). Jako dyrektor chce wyrzucić jak najwięcej z nich. Chce jednak być sprawiedliwy: za każdym razem, gdy wyrzuca członka, osoba ta musi mieć najmniejszą siłę w swojej grupie. Formalnie, w jednej operacji Little Cyan Fish wybiera niepustą grupę i zwalnia jednego z jej członków o najmniejszej sile. Jeśli kilku członków ma taką samą najmniejszą siłę, może wybrać dowolnego z nich.

Wiesz, członkowie będą bardzo smutni, gdy usłyszą, że ktoś został zwolniony, albo... może nawet chwycą za broń! Little Cyan Fish naprawdę nie chce, aby którakolwiek grupa układająca zadania stała się dominująca w tym procesie. Dlatego po każdej operacji wpływ każdej grupy musi być nie większy niż suma wpływów wszystkich pozostałych grup. To znaczy, dla każdej grupy $i$:

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

gdzie $s_i$ oznacza aktualny wpływ grupy $i$. Początkowe grupy nie muszą spełniać tego warunku.

Znajdź maksymalną liczbę członków, których można zwolnić, i skonstruuj optymalny ciąg operacji.

Wejście

W zadaniu występuje wiele przypadków testowych. Pierwszy wiersz zawiera jedną liczbę całkowitą $T$ ($1 \le T$), oznaczającą liczbę przypadków testowych.

Dla każdego przypadku testowego pierwszy wiersz zawiera jedną liczbę całkowitą $n$ ($1 \le n \le 5 \times 10^5$), oznaczającą liczbę grup. Każdy z kolejnych $n$ wierszy opisuje jedną grupę: $i$-ty z tych wierszy zaczyna się od liczby całkowitej $k_i$ ($1 \le k_i \le 5 \times 10^5$), po której następuje $k_i$ liczb całkowitych $a_{i,1}, a_{i,2}, \ldots, a_{i,k_i}$ ($1 \le a_{i,j} \le 10^9$), oznaczających siły członków $i$-tej grupy.

Gwarantuje się, że suma $n$ po wszystkich przypadkach testowych nie przekracza $5 \times 10^5$ oraz że suma $k_i$ po wszystkich przypadkach testowych nie przekracza $5 \times 10^5$.

Wyjście

Dla każdego przypadku testowego wypisz dwa wiersze. Pierwszy wiersz powinien zawierać jedną liczbę całkowitą $m$, oznaczającą maksymalną liczbę członków, których można zwolnić. Drugi wiersz powinien zawierać $m$ liczb całkowitych $b_1, b_2, \ldots, b_m$ ($1 \le b_i \le n$), gdzie $b_i$ to numer grupy wybranej w $i$-tej operacji. Jeśli $m = 0$, drugi wiersz powinien być pusty.

Jeśli istnieje wiele optymalnych ciągów operacji, możesz wypisać dowolny z nich.

Przykład

Wejście 1

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

Wyjście 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.