Toda 2

Đề bài

Mô tả

Một nhóm gồm n người bạn cùng chơi một tựa game xếp hạng. Người bạn thứ i hiện có điểm xếp hạng là ri.

Cả nhóm muốn đăng ký thi đấu chung một đội, nhưng để lập được đội thì tất cả n người phải có điểm xếp hạng bằng nhau. Cách duy nhất để thay đổi điểm là cố tình thua một trận.

Trong mỗi trận, nhóm lập một tổ gồm từ 2 đến 5 người (nhưng không vượt quá n). Khi tổ đó thua, điểm của mỗi thành viên trong tổ giảm đi 1. Điểm không thể âm, nên nếu một người đang có 0 điểm thì điểm của người đó vẫn giữ nguyên 0 sau khi thua.

Nhóm có thể chơi nhiều trận, mỗi trận chọn một tổ tùy ý thỏa mãn ràng buộc kích thước từ 2 đến 5 người. Hãy giúp nhóm tìm cách thua các trận sao cho cuối cùng tất cả có điểm bằng nhau, và điểm chung đó lớn nhất có thể.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là số người bạn.
  • Dòng thứ hai chứa n số nguyên không âm r1,r2,,rn là điểm ban đầu.

Dữ liệu ra

  • Dòng đầu in ra số nguyên R là điểm chung cuối cùng của tất cả mọi người.
  • Dòng thứ hai in ra số nguyên t là số trận nhóm cần chơi.
  • t dòng tiếp theo, mỗi dòng gồm đúng n ký tự '0' hoặc '1': ký tự thứ j của dòng thứ i bằng '1' nếu người bạn j tham gia trận thứ i, bằng '0' nếu không tham gia. Mỗi dòng phải có từ 2 đến 5 ký tự '1'.

Giá trị t không được vượt quá 104; đề bài đảm bảo luôn tồn tại lời giải như vậy. Không cần cực tiểu hóa t, chỉ cần cực đại hóa R. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ràng buộc

  • 2n100
  • 0ri100

Ví dụ

Input Output Giải thích
5
4 5 1 7 4
1
8
01010
00011
01010
10010
00011
11000
00011
11000
Điểm chung lớn nhất đạt được là 1. Có thể có nhiều dãy trận khác nhau cùng đưa mọi người về 1 điểm.
2
1 2
0
2
11
11
Chỉ có 2 người nên mỗi trận cả hai đều phải chơi, hiệu số điểm không đổi. Chỉ có thể đưa cả hai về 0 bằng cách chơi 2 trận.
3
1 1 1
1
0
Ba người đã có điểm bằng nhau nên không cần chơi trận nào.

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