Cộng và Căn Bậc Hai
Đề bài
Mô tả
Trên màn hình có một con số và hai nút bấm: nút + (cộng) và nút √ (căn bậc hai). Ban đầu trên màn hình hiển thị số . Trò chơi có cấp độ (level) và bạn bắt đầu ở cấp độ .
Khi đang ở cấp độ , bạn có thể:
- Bấm nút
+: số trên màn hình tăng thêm đúng đơn vị. Nếu số trên màn hình là thì nó trở thành . - Bấm nút
√: gọi số trên màn hình là . Sau khi bấm, số trở thành , đồng thời bạn lên cấp, tức cấp độ hiện tại trở thành . Nút này chỉ bấm được khi là một số chính phương, tức với là số nguyên dương.
Ngoài ra, sau mỗi lần bấm, nếu bạn đang ở cấp độ và số trên màn hình là , thì phải là bội của . Lưu ý điều kiện này chỉ được kiểm tra sau khi đã thực hiện lần bấm. Ví dụ, nếu bạn đang ở cấp độ và số hiện tại là , bạn bấm nút √ và số trở thành . Tại thời điểm đó không chia hết cho , nhưng lần bấm này vẫn hợp lệ, vì sau khi bấm bạn đã ở cấp độ , và chia hết cho .
Bạn cần đạt tới cấp độ . Nói cách khác, bạn cần bấm nút √ đúng lần. Hãy xác định số lần bấm nút + trước khi bấm nút √ ở mỗi cấp độ.
Bạn chỉ cần tìm bất kỳ dãy thao tác nào đưa được tới cấp độ , không nhất thiết phải tối thiểu số lần bấm.
Dữ liệu vào
- Dòng duy nhất chứa một số nguyên .
Dữ liệu ra
- In ra số nguyên không âm, mỗi số trên một dòng. Số thứ là số lần cần bấm nút
+trước khi bấm nút√ở cấp độ .
Mỗi số trong kết quả không được vượt quá (tuy nhiên số trên màn hình có thể lớn hơn ). Dữ liệu đảm bảo luôn tồn tại ít nhất một lời giải; nếu có nhiều đáp án, in ra đáp án nào cũng được.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 | 2 17 46 97 |
Cấp 1: từ bấm + hai lần thành , bấm √ thành . Cấp 2: , bấm √ thành . Cấp 3: , bấm √ thành (chia hết cho ). Cấp 4: , bấm √ thành . |
| 1 | 2 | Từ bấm + hai lần thành , bấm √ thành để lên cấp . |
| 3 | 2 17 46 |
Một dãy hợp lệ đưa tới cấp : các số chính phương đạt được lần lượt là . |
Bình luận