Một thử thách đơn giản nhưng hy vọng không tầm thường:
Viết chương trình hoặc hàm cộng các klũy thừa chia một số n. Cụ thể hơn:
- Đầu vào: hai số nguyên dương
nvàk(hoặc một cặp số nguyên có thứ tự, v.v.) - Đầu ra: tổng của tất cả các ước số dương của số
nđó làklũy thừa của số nguyên
Ví dụ: 11! = 39916800 có sáu ước là các hình khối, cụ thể là 1, 8, 27, 64, 216 và 1728. Do đó , các đầu vào đã cho 39916800và 3chương trình sẽ trả về tổng của chúng , 2044.
Các trường hợp thử nghiệm khác:
{40320, 1} -> 159120
{40320, 2} -> 850
{40320, 3} -> 73
{40320, 4} -> 17
{40320, 5} -> 33
{40320, 6} -> 65
{40320, 7} -> 129
{40320, 8} -> 1
{46656, 1} -> 138811
{46656, 2} -> 69700
{46656, 3} -> 55261
{46656, 4} -> 1394
{46656, 5} -> 8052
{46656, 6} -> 47450
{46656, 7} -> 1
{1, [any positive integer]} -> 1
Đây là mã golf, vì vậy mã của bạn càng ngắn thì càng tốt. Tôi hoan nghênh mã golf trong tất cả các loại ngôn ngữ khác nhau, ngay cả khi một số ngôn ngữ khác có thể thoát khỏi với ít byte hơn của bạn.