Universal Cup Judging System

Universal Cup

Time Limit: 3 s Memory Limit: 2048 MB Total points: 100 Difficulty: [show] Hackable ✓
Statistics

คุณอาจจะทราบดีว่า 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.