6748.Increasing Subsequence II

Time Limit: 1s Memory Limit: 512MB

Given an array of $n$ integers, your task is to calculate the number of increasing subsequences it contains. If two subsequences have the same values but in different positions in the array, they are counted separately.

Input Format(From the terminal/stdin)

The first input line has an integer $n$ : the size of the array.

The second line has $n$ integers $x_1,x_2,\dots,x_n$ : the contents of the array.

  • $1 \le n \le 2 \cdot 10^5$
  • $1 \le x_i \le 10^9$

Output Format(To the terminal/stdout)

Print one integer: the number of increasing subsequences modulo $10^9+7$ .

Sample Input

Copy
3
2 1 3
 \n
 · · \n

Sample Output

Copy
5
 \n

The increasing subsequences are $[2]$ , $[1]$ , $[3]$ , $[2,3]$ and $[1,3]$ .

Source: CSES, Dynamic Programming, 1748

Submit

请先 登录

© 2025 FAQs