#T2041. 不同值子序列(Distinct Values Subsequences)

不同值子序列(Distinct Values Subsequences)

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

板块: Sorting and Searching

时限: 1.00 s | 内存: 512 MB

题目描述

给定一个包含 nn 个整数的数组,统计所有元素互不相同的子序列个数。

子序列是从左到右的数组元素序列,其中可以有间隔。

输入

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

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

输出

输出元素互不相同的子序列个数。答案可能很大,因此请对 109+710^9+7 取模后输出。

数据范围

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

样例输入

4
1 2 1 3

样例输出

11

说明:这些子序列为 [1][1](出现两次)、[2][2][3][3][1,2][1,2][1,3][1,3](出现两次)、[2,1][2,1][2,3][2,3][1,2,3][1,2,3][2,1,3][2,1,3]