Toda 2
Đề bài
Mô tả
Một nhóm gồm người bạn cùng chơi một tựa game xếp hạng. Người bạn thứ hiện có điểm xếp hạng là .
Cả nhóm muốn đăng ký thi đấu chung một đội, nhưng để lập được đội thì tất cả 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ừ đến người (nhưng không vượt quá ). Khi tổ đó thua, điểm của mỗi thành viên trong tổ giảm đi . Điểm không thể âm, nên nếu một người đang có điểm thì điểm của người đó vẫn giữ nguyên 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ừ đến 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 là số người bạn.
- Dòng thứ hai chứa số nguyên không âm là điểm ban đầu.
Dữ liệu ra
- Dòng đầu in ra số nguyên 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 là số trận nhóm cần chơi.
- dòng tiếp theo, mỗi dòng gồm đúng ký tự '0' hoặc '1': ký tự thứ của dòng thứ bằng '1' nếu người bạn tham gia trận thứ , bằng '0' nếu không tham gia. Mỗi dòng phải có từ đến ký tự '1'.
Giá trị không được vượt quá ; đề 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 , chỉ cần cực đại hóa . Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.
Ràng buộc
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à . Có thể có nhiều dãy trận khác nhau cùng đưa mọi người về điểm. |
| 2 1 2 |
0 2 11 11 |
Chỉ có 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ề bằng cách chơi 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