Gửi bài giải
Điểm:
0,20 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Problem type
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Bờm chơi trò chơi điện tử Lucky Luke đến màn phải điều khiển Lucky leo lên một cầu thang gồm ~n~ bậc.
Các bậc thang được đánh số từ 1 đến ~n~ từ dưới lên trên. Lucky có thể đi lên một bậc thang, hoặc nhảy một bước lên hai bậc thang. Tuy nhiên, một số bậc thang đã bị hỏng do cũ kỹ và Lucky không thể bước chân lên được. Biết ban đầu, Lucky đứng ở bậc thang số 1 (bậc thang số 1 không bao giờ bị hỏng).
Chơi đến đây, Bờm chợt này ra câu hỏi: có bao nhiêu cách để Lucky leo hết được cầu thang? (nghĩa là leo đến bậc thang thứ ~n~). Bờm muốn nhờ bạn trả lời câu hỏi này.
Input
- Dòng đầu tiên: gồm 2 số nguyên ~n~ và ~k~, là số bậc của cầu thang và số bậc thang bị hỏng (~0 \leq k < n \leq 10^5~).
- Dòng thứ hai: gồm ~k~ số nguyên cho biết chỉ số của các bậc thang bị hỏng theo thứ tự tăng dần.
Output
- In ra phần dư của số cách Lucky leo hết cầu thang khi chia cho ~16092004~.
Sample Test
Input 1
4 2
2 3
Output 1
0
Input 2
12 2
5 9
Output 2
12
Bình luận