#P1004. 寻宝之路

寻宝之路

题目描述

在一座古老的神庙中,有一条长长的石阶通往藏有宝物的密室。石阶共有 NN 级。一位探险者现在站在石阶的起点(第 00 级地面),他每一步可以向上跨 11 级或 22 级台阶。

然而,由于神庙年久失修,石阶中有 MM 级已经塌陷,分别是第 a1,a2,…,aMa_1, a_2, \ldots, a_M 级台阶。踩上这些台阶会坠入深坑,绝对不能触碰。

请问,在不踩到任何塌陷台阶的前提下,从起点安全到达石阶最顶端(第 NN 级)一共有多少种不同的走法?请输出方案数对 1e9+71e9 + 7 取模的结果。

输入格式

第一行包含整数 NN 和 MM。

接下来 MM 行每行给出一个塌陷台阶的编号。

输出格式

输出一个整数,表示安全到达第 NN 级的走法数量,对 1e9+71e9+7 取模。

样例

6 1
3
4
10 2
4
5
0
10 1
1
34
10 1
2
21
100 5
1
23
45
67
89
608200469

样例1解释

共有以下 44 种安全的走法:

  • 0→1→2→4→5→60 \to 1 \to 2 \to 4 \to 5 \to 6
  • 0→1→2→4→60 \to 1 \to 2 \to 4 \to 6
  • 0→2→4→5→60 \to 2 \to 4 \to 5 \to 6
  • 0→2→4→60 \to 2 \to 4 \to 6

样例2解释

也有可能出现无论如何都无法安全到达顶端的情况。

样例3解释

请注意,输出的答案需要对 1e9+71e9+7 取模。

数据范围

对于 20%20\% 的数据,1≤N≤301\le N\le 30。

对于 40%40\% 的数据,1≤N≤601\le N\le 60。

对于 100%100\% 的数据,1≤N≤1051 \leq N \leq 10^5,0≤M≤N−10 \leq M \leq N-1,1≤a1,a2,…,aM≤N1 \leq a_1, a_2, \ldots, a_M \leq N。