#T2081. 递增子序列 II(Increasing Subsequence II)

递增子序列 II(Increasing Subsequence II)

链接: https://cses.fi/problemset/task/2220

板块: Dynamic Programming

时限: 1.00 s | 内存: 512 MB

题目描述

给定一个包含 nn 个整数的数组,你的任务是计算它包含的递增子序列的数量。如果两条子序列的值相同但在数组中的位置不同,则分别计数。

输入

第一行输入包含一个整数 nn:数组的大小。

第二行包含 nn 个整数 x1,x2,,xnx_1,x_2,\dots,x_n:数组的内容。

输出

输出一个整数:递增子序列的数量对 109+710^9+7 取模的结果。

数据范围

1n21051 \le n \le 2 \cdot 10^5 1xi1091 \le x_i \le 10^9

样例输入

3
2 1 3

样例输出

5

说明:递增子序列为 [2][2][1][1][3][3][2,3][2,3][1,3][1,3]