201044: [AtCoder]ARC104 E - Random LIS

Memory Limit:1024 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $700$ points

Problem Statement

Given is an integer sequence of length $N$: $A_1, A_2, \cdots, A_N$.

An integer sequence $X$, which is also of length $N$, will be chosen randomly by independently choosing $X_i$ from a uniform distribution on the integers $1, 2, \ldots, A_i$ for each $i (1 \leq i \leq N)$.

Compute the expected value of the length of the longest increasing subsequence of this sequence $X$, modulo $1000000007$.

More formally, under the constraints of the problem, we can prove that the expected value can be represented as a rational number, that is, an irreducible fraction $\frac{P}{Q}$, and there uniquely exists an integer $R$ such that $R \times Q \equiv P \pmod {1000000007}$ and $0 \leq R < 1000000007$, so print this integer $R$.

Notes

A subsequence of a sequence $X$ is a sequence obtained by extracting some of the elements of $X$ and arrange them without changing the order. The longest increasing subsequence of a sequence $X$ is the sequence of the greatest length among the strictly increasing subsequences of $X$.

Constraints

  • $1 \leq N \leq 6$
  • $1 \leq A_i \leq 10^9$
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

$N$
$A_1$ $A_2$ $\cdots$ $A_N$

Output

Print the expected value modulo $1000000007$.


Sample Input 1

3
1 2 3

Sample Output 1

2

$X$ becomes one of the following, with probability $1/6$ for each:

  • $X = (1,1,1)$, for which the length of the longest increasing subsequence is $1$;
  • $X = (1,1,2)$, for which the length of the longest increasing subsequence is $2$;
  • $X = (1,1,3)$, for which the length of the longest increasing subsequence is $2$;
  • $X = (1,2,1)$, for which the length of the longest increasing subsequence is $2$;
  • $X = (1,2,2)$, for which the length of the longest increasing subsequence is $2$;
  • $X = (1,2,3)$, for which the length of the longest increasing subsequence is $3$.

Thus, the expected value of the length of the longest increasing subsequence is $(1 + 2 + 2 + 2 + 2 + 3) / 6 \equiv 2 \pmod {1000000007}$.


Sample Input 2

3
2 1 2

Sample Output 2

500000005

$X$ becomes one of the following, with probability $1/4$ for each:

  • $X = (1,1,1)$, for which the length of the longest increasing subsequence is $1$;
  • $X = (1,1,2)$, for which the length of the longest increasing subsequence is $2$;
  • $X = (2,1,1)$, for which the length of the longest increasing subsequence is $1$;
  • $X = (2,1,2)$, for which the length of the longest increasing subsequence is $2$.

Thus, the expected value of the length of the longest increasing subsequence is $(1 + 2 + 1 + 2) / 4 = 3 / 2$. Since $2 \times 500000005 \equiv 3 \pmod {1000000007}$, we should print $500000005$.


Sample Input 3

6
8 6 5 10 9 14

Sample Output 3

959563502

Input

题意翻译

给出一个长度为 $N$ 的序列 $A$,按照下列方式随机生成一个长度为 $N$ 的序列 $X$: $\forall i\in[1,n]$,$X_i$ 在 $[1,A_i]$ 中的整数均匀随机。 求其最长**上升**子序列长度的期望,对 $10^9+7$ 取模。

加入题单

算法标签: