#L2188. 「SHOI2014」神秘金字塔

「SHOI2014」神秘金字塔

「SHOI2014」神秘金字塔

题目描述

对神经组织的进化生物学研究将历史追溯到了人类社会形成之初、一个叫做 CCMCCM 的神秘部落。

考古学证据表明,CCMCCM 一度具有高度繁华的文明。然而 CCMCCM 的历史却似乎在一夜之间神秘地消失了。考古学家近日在大西洋底发掘出了一处 CCMCCM 文明遗迹,有希望能够揭开 CCMCCM 古文明失落之谜。

CCMCCM 遗迹的中央是一座巨大的石质建筑,被考古学家称之为金字塔。金字塔有这样四条性质:

  1. CCMCCM 金字塔由完全相同的 1×1×11 \times 1 \times 1 单位的立方体石块构成;
  2. CCMCCM 金字塔由若干层组成,每一层的石块从正上方看都在平面上形成一个联通块。高层的石块都有低层的石块在下方作为支撑,不会有石块悬空;
  3. CCMCCM 金字塔的每一层严格都满足左右对称和上下对称,并且所有层的对称轴是重合的,从左右/上下对称轴向两端长度/宽度非严格递减;
  4. CCMCCM 金字塔的每一层的最大长度和最大宽度都相等,并且都是偶数(因为 CCMCCM 人认为偶数代表了好运而奇数则会带来不幸)。

然而,不幸的是,遗迹中的金字塔由于年代过于久远,已经残缺不全,难以辨认全貌。为了尽可能地还原 CCMCCM 金字塔的实际情况,考古学家们通过其他证据估计出了 CCMCCM 金字塔所使用的石块个数、金字塔的高度以及每一层的宽度,他们想请你帮忙计算符合上述性质的可能的金字塔个数。

输入格式

第一行两个整数 n,hn, h,表示 CCMCCM 金字塔的总石块数和 CCMCCM 金字塔的高度。

从第二行开始的 hh 行,每行一个整数 ll,表示从最底层开始的每一层的最大长度(宽度),保证非严格递减。

输出格式

输出一行一个整数,表示可能的金字塔个数。由于方案数可能数量很大,输出答案为模 10000000071000000007 之后的结果。

样例 1

输入

36 3
6
4
2

输出

1

样例一的金字塔从顶向下看的样子(数字表示这一格的高度):

1 1
2 2
1 2 3 3 2 1
1 2 3 3 2 1
2 2
1 1

样例 2

输入

44 2
6
4

输出

3

样例二的金字塔从顶向下看可能的样子(数字表示这一格的高度):

1 1 1 1
1 1 2 2 1 1
1 2 2 2 2 1
1 2 2 2 2 1
1 1 2 2 1 1
1 1 1 1

1 1 1 1
2 2 2 2
1 2 2 2 2 1
1 2 2 2 2 1
2 2 2 2
1 1 1 1

1 1
1 2 2 2 2 1
1 2 2 2 2 1
1 2 2 2 2 1
1 2 2 2 2 1
1 1

数据范围与提示

对于 100%100\% 的数据,n1000n \leq 1000, 2l202 \leq l \leq 20, 1h101 \leq h \leq 10