#4011. 非奈特

非奈特

非奈特

题目描述

求有多少个排列 aa,使得其长度为 mm 的前缀是给定的序列 bb,且:

$$\sum_{i=1}^n \max(0, i - a_i) = \sum_{i=1}^n \sum_{j=i+1}^n [a_i > a_j]$$

答案向 109+710^9+7 取模。

输入格式

第一行两个整数 n,mn,m

接下来一行 mm 个整数,表示序列 bb

输出格式

一行一个整数,表示答案对 109+710^9 + 7 取模的值。

数据范围

  • 对于 30%30\% 的数据,n,m10n,m \leq 10
  • 对于 60%60\% 的数据,n,m103n,m \leq 10^3
  • 对于 100%100\% 的数据,1n,m2×1051 \leq n,m \leq 2 \times 10^5

样例数据 1

输入

5 2
1 3

输出

5