Dãy Fibonacci
Đề bài
Mô tả
Cho dãy gồm phần tử được đánh chỉ số từ đến . Hãy đếm số cách chia dãy thành các dãy con gồm các phần tử liên tiếp sao cho tổng của mỗi dãy con là một số Fibonacci.
Mỗi phần tử thuộc đúng một dãy con. Hai cách chia được coi là khác nhau nếu tập các vị trí cắt khác nhau. Dãy Fibonacci được xác định bởi , với , nên các số Fibonacci là
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên ;
- Dòng tiếp theo chứa số nguyên .
Dữ liệu ra
Một dòng duy nhất chứa một số nguyên là phần dư của số cách chia sau khi chia cho .
Ràng buộc
Subtasks
- Subtask 1 ( số điểm): .
- Subtask 2 ( số điểm): .
- Subtask 3 ( số điểm): Không có ràng buộc gì thêm.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 2 5 3 1 2 |
5 | Có cách chia là: ; ; ; ; . |
| 3 1 1 1 |
4 | Ví dụ thêm (không có trong đề gốc). Các cách chia: ; ; ; (các tổng đều là số Fibonacci). |
Bình luận