P0423

[SCOI2008]着色方案

[SCOI2008]着色方案

有 nn 个木块排成一行,从左到右依次编号为 1∼n1\sim n。

你有 kk 种颜色的油漆,其中第 ii 种颜色的油漆足够涂 cic_i 个木块。所有油漆刚好足够涂满所有木块,即

c1+c2+⋯+ck=n.c_1+c_2+\cdots+c_k=n.

相邻两个木块涂相同色显得很难看,所以你希望统计任意两个相邻木块颜色都不同的着色方案数。

输入格式

第一行为一个正整数 kk。

第二行包含 kk 个整数 c1,c2,…,ckc_1, c_2, \dots, c_k。

输出格式

输出一个整数,即方案总数模 109+710^9+7 的结果。

样例输入

3
1 2 3

样例输出

10

数据范围

对于 100%100\% 的数据:

  • 1≤k≤151\le k\le 15;
  • 1≤ci≤51\le c_i\le 5。

来源与许可

本题为 SCOI 2008 试题「着色方案」,题面与测试数据整理自 BZOJ 1079。

样例 1

输入

3
1 2 3

输出

10