Contest Duration: - (local time) (120 minutes) Back to Home
D - Unique Subsequence /

Time Limit: 2 sec / Memory Limit: 1024 MB

### 問題文

A の非空な部分列 s であって，以下の条件を満たすものの個数を 998244353 で割った余りを求めてください．

• A から s を取り出す方法が一意である． つまり，s=(s_1,s_2,\cdots,s_k) とした時，A_{idx(i)}=s_i (1 \leq i \leq k)を満たす添字の列 1 \leq idx(1)<idx(2)<\cdots<idx(k) \leq N がちょうど一つ存在する．

### 制約

• 1 \leq N \leq 2 \times 10^5
• 1 \leq A_i \leq N
• 入力される値はすべて整数である

### 入力

N
A_1 A_2 \cdots A_N


### 入力例 1

3
1 2 1


### 出力例 1

5


• (1,1)
• (1,2)
• (1,2,1)
• (2)
• (2,1)

### 入力例 2

4
4 2 1 3


### 出力例 2

15


### 入力例 3

12
1 2 3 6 9 2 3 3 9 6 1 6


### 出力例 3

1178


Score : 700 points

### Problem Statement

Given is a sequence of N integers A_1,A_2,\cdots,A_N.

Find the number of non-empty subsequences s of A satisfying the following condition, modulo 998244353.

• There is only one way to extract s from A. Formally, there uniquely exists a sequence of indices 1 \leq idx(1)<idx(2)<\cdots<idx(k) \leq N such that A_{idx(i)}=s_i (1 \leq i \leq k), where s=(s_1,s_2,\cdots,s_k).

### Constraints

• 1 \leq N \leq 2 \times 10^5
• 1 \leq A_i \leq N
• 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


### Sample Input 1

3
1 2 1


### Sample Output 1

5


The following five subsequences satisfy the condition.

• (1,1)
• (1,2)
• (1,2,1)
• (2)
• (2,1)

The subsequence (1) does not satisfy the condition since there are two ways to extract it.

### Sample Input 2

4
4 2 1 3


### Sample Output 2

15


### Sample Input 3

12
1 2 3 6 9 2 3 3 9 6 1 6


### Sample Output 3

1178