Logo Universal Online Judge

UOJ

时间限制:1 s 空间限制:512 MB
统计

给定一个长 $n$ 的排列 $\{p_n\}$,你要从中选择若干个元素组成一个上升子序列,最初每个元素均为未选状态,对于每次操作:

• 称一个元素合法当且仅当它仍未被选,且选中它后所有已选元素仍是一个上升子序列

• 你会随机从所有合法元素中选中一个

• 当不存在合法元素时停止操作

求最终的上升子序列长度期望,对 $10^9 + 7$ 取模

【输入格式】

第一行一个正整数 $n$

第二行 $n$ 个正整数 $p_i$

【输出格式】

输出一个正整数,表示答案

【样例输入】

3

3 1 2

【样例输出】

666666673

【数据范围】

对于前 $30\%$ 的数据,$n \le 20$。

对于前 $60\%$ 的数据,$n \le 500$。

对于所有数据,$n \le 2000,p_i \le n$。