MEX Sequences
题意翻译
**题目描述:**
我们定义一个整数序列 $x_{1}, x_{2}, \ldots, x_{k}$ “MEX 正确”,当且仅当:
对于每一个 $i$($1 \le i \le k$),都满足 $\lvert x_{i} − \operatorname{MEX}(x_{1},x_{2}, \ldots , x_{i})\rvert \le 1$。
其中,$\operatorname{MEX}(x_{1},x_{2},\ldots,x_{k})$ 即整数序列 $x_{1},x_{2},\ldots,x_{k}$ 中未出现的最小非负整数。例如,$\operatorname{MEX}(1,0,1,3)=2$、$\operatorname{MEX}(2,1,5)=0$。
给定一个由 $n$ 个非负整数组成的数组 $a$。计算给定数组的非空 “MEX 正确” 子序列的数量。子序列的数量可能非常大,因此请将答案对 $998244353$ 取模后输出。
注意:数组 $a$ 的子序列即满足 $1 \le i_{1} < i_{2} < \cdots < i_{m} \le n$ 的序列 $a_{i_{1}}, a_{i_{2}}, \ldots, a_{i_{m}}$。我们认为,当两个子序列中至少存在一个元素在原数组中的下标不同时,这两个子序列不同(即两个子序列所对应的$i_{1}, i_{2}, \ldots, i_{m}$ 不同时,这两个子序列不同)。
**输入格式:**
第一行一个数 $t$($1 \le t \le {10}^5$),表示测试数据组数。
每组数据第一行一个整数 $n$($1 \le n \le 5 \times {10}^5$)。
第二行 $n$ 个整数 $a_{1},a_{2},\ldots,a_{n}$($0 \le a_{i} \le n$)。
所有测试数据的 $n$ 的总和不超过 $5 \cdot {10}^5$。
**输出格式:**
对于每组数据,输出一个整数,即给定数组的非空 MEX 正确子序列的数量对 $998244353$ 取模的结果。
**样例说明:**
在样例的 $4$ 组数据中:
第一组中,可行的子序列是 $[0] , [1] , [0,1]$ 和 $[0,2]$。
第一组中,可行的子序列是 $[0] , [1]$。
第三组中,每个非空子序列都是可行的。
题目描述
Let's call a sequence of integers $ x_1, x_2, \dots, x_k $ MEX-correct if for all $ i $ ( $ 1 \le i \le k $ ) $ |x_i - \operatorname{MEX}(x_1, x_2, \dots, x_i)| \le 1 $ holds. Where $ \operatorname{MEX}(x_1, \dots, x_k) $ is the minimum non-negative integer that doesn't belong to the set $ x_1, \dots, x_k $ . For example, $ \operatorname{MEX}(1, 0, 1, 3) = 2 $ and $ \operatorname{MEX}(2, 1, 5) = 0 $ .
You are given an array $ a $ consisting of $ n $ non-negative integers. Calculate the number of non-empty MEX-correct subsequences of a given array. The number of subsequences can be very large, so print it modulo $ 998244353 $ .
Note: a subsequence of an array $ a $ is a sequence $ [a_{i_1}, a_{i_2}, \dots, a_{i_m}] $ meeting the constraints $ 1 \le i_1 < i_2 < \dots < i_m \le n $ . If two different ways to choose the sequence of indices $ [i_1, i_2, \dots, i_m] $ yield the same subsequence, the resulting subsequence should be counted twice (i. e. two subsequences are different if their sequences of indices $ [i_1, i_2, \dots, i_m] $ are not the same).
输入输出格式
输入格式
The first line contains a single integer $ t $ ( $ 1 \le t \le 10^5 $ ) — the number of test cases.
The first line of each test case contains a single integer $ n $ ( $ 1 \le n \le 5 \cdot 10^5 $ ).
The second line contains $ n $ integers $ a_1, a_2, \dots, a_n $ ( $ 0 \le a_i \le n $ ).
The sum of $ n $ over all test cases doesn't exceed $ 5 \cdot 10^5 $ .
输出格式
For each test case, print a single integer — the number of non-empty MEX-correct subsequences of a given array, taken modulo $ 998244353 $ .
输入输出样例
输入样例 #1
4
3
0 2 1
2
1 0
5
0 0 0 0 0
4
0 1 2 3
输出样例 #1
4
2
31
7
说明
In the first example, the valid subsequences are $ [0] $ , $ [1] $ , $ [0,1] $ and $ [0,2] $ .
In the second example, the valid subsequences are $ [0] $ and $ [1] $ .
In the third example, any non-empty subsequence is valid.