Cân bằng tổng

Đề bài

Mô tả

k chiếc hộp được đánh số từ 1 đến k. Hộp thứ i chứa ni số nguyên. Các số có thể âm và tất cả các số trong toàn bộ các hộp đều đôi một khác nhau.

Bạn phải thực hiện thao tác sắp xếp lại sau đây đúng một lần: từ mỗi hộp chọn ra đúng một số (tổng cộng k số được chọn), rồi đặt mỗi số đã chọn vào một hộp nào đó, sao cho mỗi hộp nhận đúng một số. Nói cách khác, tập k số được chọn được phân phối trở lại vào k hộp, mỗi hộp một số (một số có thể được đặt lại vào chính hộp mà nó vừa được lấy ra).

Sau thao tác, số lượng phần tử của mỗi hộp vẫn như ban đầu. Mục tiêu là làm cho tổng các số trong mỗi hộp đều bằng nhau. Hãy xác định điều này có thực hiện được không, và nếu được thì chỉ ra một cách.

Dữ liệu vào

  • Dòng đầu chứa số nguyên k, số lượng hộp.
  • Dòng thứ i trong k dòng tiếp theo bắt đầu bằng ni, số phần tử của hộp i, sau đó là ni số nguyên ai,1,,ai,ni, các phần tử của hộp i.

Dữ liệu ra

Nếu không thể đạt được mục tiêu, in ra một dòng chứa "No".

Ngược lại, in ra "Yes" ở dòng đầu, sau đó in k dòng. Dòng thứ i chứa hai số nguyên cipi, nghĩa là số ci được lấy ra từ hộp i và được đặt vào hộp pi.

Nếu có nhiều đáp án, in ra một đáp án bất kỳ. Chữ cái có thể viết hoa hoặc thường tùy ý.

Ràng buộc

  • 1k15
  • 1ni5000
  • |ai,j|109
  • Tất cả các ai,j đôi một khác nhau.

Ví dụ

Input Output Giải thích
4
3 1 7 4
2 3 2
2 8 5
1 10
Yes
7 2
2 3
5 1
10 4
Đặt số 7 vào hộp 2, số 2 vào hộp 3, số 5 vào hộp 1 và giữ số 10 ở hộp 4. Khi đó các hộp chứa {1,5,4}, {3,7}, {8,2}, {10}, tổng mỗi hộp đều bằng 10.
2
2 3 -2
2 -1 5
No Không có cách chọn và phân phối lại nào thỏa mãn.
2
2 -10 10
2 0 -20
Yes
-10 2
-20 1
Đổi chỗ hai số -20 và -10, tổng mỗi hộp đều bằng -10.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0