Định lý số đa giác của Fermat nói rằng mọi số nguyên dương có thể được biểu diễn dưới dạng tổng của tối đa đường chéo. Điều này có nghĩa là mọi số nguyên dương có thể được biểu thị bằng tổng của tối đa ba số tam giác, bốn số vuông, năm số ngũ giác, v.v. Nhiệm vụ của bạn là lấy một số nguyên dương và một số nguyên và để xuất ra số nguyên -gonal số nguyên mà tổng để .
Các -thứ nguyên -gonal, nơi và , có thể được định nghĩa trong một vài cách khác nhau. Cách phi toán học-y là th số -gonal có thể được xây dựng như một đa giác thường xuyên với bên, mỗi chiều dài . Ví dụ: với (số tam giác):
Xem ở đây để biết ví dụ với một lớn hơn .
Định nghĩa math-y là bằng cách sử dụng công thức cho , mang lại số thứ tự thứ :
được đưa ra trong trang Wikipedia ở đây .
Đầu vào
Hai số nguyên dương, và , với điều kiện . Bạn có thể nhập các số nguyên này theo cách biểu thị tự nhiên nhất trong ngôn ngữ của bạn (số thập phân, số nguyên, số Church, số dấu phẩy động có giá trị nguyên, v.v.).
Đầu ra
Một danh sách các số nguyên, , với độ dài tối đa , trong đó tổng bằng và tất cả các số nguyên trong là số nguyên . Một lần nữa, các số nguyên có thể được xuất ra trong biểu diễn tự nhiên trong ngôn ngữ của bạn, với bất kỳ dấu tách riêng biệt, nhất quán nào (để ký tự không thập phân cho đầu ra thập phân, một ký tự khác với ký tự được sử dụng cho đầu ra đơn nguyên, v.v.)
Quy tắc
- Đầu vào hoặc đầu ra sẽ không bao giờ vượt quá giới hạn số nguyên cho ngôn ngữ của bạn
- không phải đặt hàng
- Trong trường hợp có nhiều đầu ra có thể, bất kỳ hoặc tất cả đều được chấp nhận
- Đây là môn đánh gôn, vì vậy mã ngắn nhất tính bằng byte sẽ thắng
Các trường hợp thử nghiệm
x, s => L
1, s => 1
2, s => 1, 1
5, 6 => 1, 1, 1, 1, 1
17, 3 => 1, 6, 10
17, 4 => 1, 16
17, 5 => 5, 12
36, 3 => 36
43, 6 => 15, 28
879, 17 => 17, 48, 155, 231, 428
4856, 23 => 130, 448, 955, 1398, 1925
x=17, s=5
chúng ta có thể xuất ra 5,12,0,0,0
thay vì chỉ 5,12
?
Q
vào trình của tôi?