Bedao Regular Contest 11 - CANDY

Xem dạng PDF

Gửi bài giải


Điểm: 1,20 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Một lớp học nọ có ~n~ học sinh. Thầy giáo cho họ một túi kẹo ~U~ có ~m~ viên kẹo được đánh số từ ~1~ đến ~m~. Với học sinh ~i~, viên kẹo thứ ~k~ có độ ngon là ~v_i(k)~. Tương tự, một túi kẹo nhỏ bất kỳ ~S~ lấy từ ~U~ có độ ngon là tổng độ ngon (đối với học sinh ~i~) của các viên kẹo có trong túi ~S~.

Là một học sinh ưu tú của lớp học đề cao thực lực, bạn cần chia túi kẹo ~U~ thành ~n~ túi kẹo nhỏ ~S_1, S_2, \dots, S_n~ (học sinh ~i~ sẽ nhận túi ~S_i~) sao cho:

  • Một viên kẹo phải được nằm trong duy nhất một túi nào đó.
  • Mỗi túi phải có ít nhất ~1~ viên kẹo.
  • Với mỗi học sinh ~i~, bạn ấy không muốn túi kẹo ~S_i~ của mình quá tệ so với những túi kẹo khác. Chi tiết hơn, bạn cần phải đảm bảo ~v_i(S_i) \ge v_i(S_j) - \max_{k \in S_j} v_i(k)~ với mọi ~i, j~ ~(1 \le i, j \le n, i \neq j)~.

Ta có thể chứng minh được là luôn có cách chia kẹo để thỏa mãn các điều kiện trên. Hãy tìm và in ra một cách chia kẹo như thế.

Input

  • Dòng đầu tiên chứa ~2~ số nguyên dương ~n~ và ~m~ ~(1 \le n \le m \le 500)~.
  • ~n~ dòng tiếp theo, dòng thứ ~i~ chứa ~m~ số nguyên ~v_i(1), v_i(2), \dots, v_i(m)~ ~(0 \le v_i(j) \le 10^9)~ tương ứng với độ ngon của ~m~ viên kẹo với học sinh ~i~.

Output

  • Gồm ~n~ dòng, dòng thứ ~i~ chứa số nguyên ~k_i~ là số lượng kẹo của túi ~S_i~, tiếp đến là ~k_i~ số nguyên ngăn cách bởi dấu cách tương ứng là chỉ số của những viên kẹo trong túi ~S_i~.

Subtask

  • Có ~10\%~ số test là ~m = n~.
  • Có ~10\%~ số test là ~n = 2~.
  • Còn lại không có ràng buộc gì thêm.

Sample Input

4 4
34 8 8 25
4 30 2 8
32 32 28 35
28 17 18 0

Sample Output

1 1
1 2
1 4
1 3

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.