Một số số như: 6, 12, 20, 30, 42, 56, 60, 90, 120, v.v ... có thể được biểu thị dưới dạng tích của các số nguyên liên tiếp như hình dưới đây.
6 = 2 * 3
12 = 3 * 4
30 = 5 * 6
60 = 3 * 4 * 5
90 = 9 * 10
120 = 4 * 5 * 6
Viết chương trình hoặc hàm xuất ra danh sách các số nguyên liên tiếp mà sản phẩm bằng với số được chỉ định.
Ví dụ về các số không phù hợp với logic này là:
99 = 9 * 11 (Product of non-consecutive numbers)
121 = 11 * 11 (Same numbers)
2 = 1 * 2 (Product of itself and 1)
13 = 13 (Product of only one number)
Xin lưu ý rằng trong trường hợp 2 = 2 * 1, chúng tôi không coi đó là kết quả hợp lệ, vì một số nguyên nhân với 1 cho kết quả tương tự. Đối với câu hỏi này, chúng tôi sẽ chỉ xem xét các số nguyên> = 2 trong sản phẩm.
Đầu vào
Một số nguyên dương 32 bit hợp lệ. Có thể từ đầu vào tiêu chuẩn, một đối số chức năng, vv
Đầu ra
Danh sách các số nguyên liên tiếp> = 2 (theo thứ tự tăng dần hoặc giảm dần). Nếu có một số kết hợp các số nguyên liên tiếp, chỉ cần cung cấp một trường hợp sẽ làm. Nếu bạn cung cấp nhiều hơn, nó tốt.
Những hạn chế
Mã phải mất một khoảng thời gian hợp lý (<5 phút) để chạy trên máy tính tiêu chuẩn cho tất cả các đầu vào hợp lệ (số nguyên 32 bit dương). Nếu có một sản phẩm số nguyên liên tiếp, mã sẽ xuất một hoặc nhiều trong thời gian giới hạn. Khác, mã nên chấm dứt không có đầu ra trong thời gian giới hạn.
Đây là mã golf, vì vậy mã ngắn nhất tính bằng byte sẽ thắng.
30=5*6.