Stairs
题意翻译
给定一个长度为 $n$ 的排列 $p$。
令其中第 $i$ 个位置的权值为 $p$ 中最长的包含 $i$ 的连续自然数按顺序组成的区间的长度。例如,$p=[4,1,2,3,7,6,5]$ 中,第 $6$ 个位置的权值为 $[5,7]$ 的长度,第 $2$ 个位置的权值为 $[2,4]$ 的长度。
将这些权值依次拼在一起,就得到了 $p$ 的「阶梯序列」。
给定 $a$,你需要求出存在多少个 $p$,使得 $a$ 为 $p$ 的「阶梯序列」。答案对 $998244353$ 取模。
题目描述
For a permutation $ p $ of numbers $ 1 $ through $ n $ , we define a stair array $ a $ as follows: $ a_i $ is length of the longest segment of permutation which contains position $ i $ and is made of consecutive values in sorted order: $ [x, x+1, \ldots, y-1, y] $ or $ [y, y-1, \ldots, x+1, x] $ for some $ x \leq y $ . For example, for permutation $ p = [4, 1, 2, 3, 7, 6, 5] $ we have $ a = [1, 3, 3, 3, 3, 3, 3] $ .
You are given the stair array $ a $ . Your task is to calculate the number of permutations which have stair array equal to $ a $ . Since the number can be big, compute it modulo $ 998\,244\,353 $ . Note that this number can be equal to zero.
输入输出格式
输入格式
The first line of input contains integer $ n $ ( $ 1 \le n \le 10^5 $ ) — the length of a stair array $ a $ .
The second line of input contains $ n $ integers $ a_1, a_2, \ldots, a_n $ ( $ 1 \le a_i \le n $ ).
输出格式
Print the number of permutations which have stair array equal to $ a $ . Since the number can be big, compute it modulo $ 998\,244\,353 $ .
输入输出样例
输入样例 #1
6
3 3 3 1 1 1
输出样例 #1
6
输入样例 #2
7
4 4 4 4 3 3 3
输出样例 #2
6
输入样例 #3
1
1
输出样例 #3
1
输入样例 #4
8
2 2 2 2 2 2 1 1
输出样例 #4
370
输入样例 #5
4
3 2 3 1
输出样例 #5
0