Bạn nên viết một chương trình hoặc hàm nhận danh sách các chữ số làm đầu vào và đầu ra hoặc trả về số tiền lớn nhất có thể đạt được bằng cách đặt các chữ số này vào một hình vuông.
Đầu vào sẽ luôn chứa một số chữ số vuông. Một ví dụ sắp xếp vuông cho đầu vào 9 1 2 3 4 5 6 7 7có thể là
677
943
125
Tổng được tính là tổng của tất cả các hàng và cột. Đối với sự sắp xếp trên, tổng sẽ là 677 + 943 + 125 + 691 + 742 + 735 = 3913. Lưu ý rằng đây không phải là tổng tối đa nên đây không phải là đầu ra mong đợi.
Đầu vào
- Một danh sách có độ dài
n^2(n>=1) chứa các chữ số khác không (1-9).
Đầu ra
- Một số nguyên, tổng lớn nhất có thể đạt được với các chữ số đầu vào được đặt trong một hình vuông.
Ví dụ
Định dạng ví dụ là input => output.
5 => 10
1 2 3 4 => 137
5 8 6 8 => 324
9 1 2 3 4 5 6 7 7 => 4588
2 4 9 7 3 4 2 1 3 => 3823
8 2 9 4 8 1 9 3 4 6 3 8 1 5 7 1 => 68423
5 4 3 6 9 2 6 8 8 1 6 8 5 2 8 4 2 4 5 7 3 7 6 6 7 => 836445
Đây là mã golf nên mục ngắn nhất sẽ thắng.