Lý lịch
Hoa Kỳ có một tình yêu độc đáo là vui vẻ, điều khiển sự cố tình của một khu vực bầu cử để dự đoán kết quả bỏ phiếu nhất định. Mới gần đây đã có một vụ án vui vẻ được đưa ra trước Tòa án Tối cao. Giao lưu, đặc biệt là khi liên quan đến chủng tộc, bị cai trị bất hợp pháp và dẫn đến yêu cầu vẽ lại các đường huyện.
Đưa ra một bản đồ hình chữ nhật của một đô thị (mảng 2d), bạn sẽ vẽ các đường huyện để giúp nhóm của bạn có được đại diện nhất. Đó là, bạn sẽ vui vẻ. Mỗi đô thị có hai bên, 0
và 1
. Bản đồ sẽ bao gồm các hình vuông có 0
hoặc 1
trên chúng. Đây là một bản đồ ví dụ:
Thử thách
Bạn sẽ nhóm bản đồ thành các quận để 1
nhóm sẽ nhận được ít nhất số quận được chỉ định bởi Đầu vào.
Đầu vào
Đầu vào sẽ bao gồm một bản đồ, số quận cần vẽ và số quận tối thiểu mà 1
bên đó cần để giành chiến thắng (điểm tối thiểu).
Đầu ra
Đầu ra sẽ là một bản đồ của các huyện. Mỗi quận sẽ bao gồm duy nhất một chữ cái viết hoa của bảng chữ cái. Vâng, điều này có nghĩa là sẽ không có hơn 26 quận.
Nếu không có đầu ra khả thi, nơi bên được nhập sẽ giành đủ quận, hoặc:
- In ấn Chúng tôi đã thử ...
- Lỗi nghiêm trọng vì đảng bị tổn thương không thể khắc phục do kết quả bầu cử
- Hoặc cả hai
Quy tắc (cũng rất quan trọng)
- Tất cả các huyện phải liền kề nhau
- Các quận có thể không có các quận khác trong đó
- Mỗi huyện phải có ít nhất bốn nút trong đó. Đầu vào sẽ phù hợp với các quy tắc, có nghĩa là sẽ có ít nhất
number_of_districts * 4
các nút trong bản đồ - Điểm của mỗi bên là số quận mà nó chiếm đa số trong
- Nếu một quận có cùng số
0
s và1
s, thì không bên nào được hưởng lợi từ đó - Quy tắc không gian lận bình thường
- Đây là mã golf , vì vậy mã ngắn nhất tính bằng byte thắng.
Các trường hợp thử nghiệm
1. Input 1. Output 2. Input 2. Output 3. Input 3. Output
districts: 5 Image and map districts: 3 Image below districts: 3 fatal error
min wins: 3 min wins: 3 min wins: 3
map: map: map:
00000110000 AAAAAAAAAAA 101101 101101
10000010000 AAAAAAAAAAA 100000 100000
10010000011 AAAAAAAAAAA 011011 011011
11001110000 BBBBBBBAAAA 111111 100111
00111111000 BBBBBBBAAAA
01111111000 CCCCCDDDAAA
01111111001 CCCCCDDDAAA
01000111100 EEEEEDDDDDD
00000001000 EEEEEDDDDDD
Tất nhiên, chương trình của bạn nên hoạt động cho bất kỳ trường hợp kiểm tra hợp lệ nào , không chỉ những trường hợp thử nghiệm này.