AtCoder Regular Contest 187
翻译中…
Problem Statement
翻译中…
For a permutation $P = (P_1, \ldots, P_N)$ of $(1, \ldots, N)$, let $P' = (P'_1, \ldots, P'_N)$ be the permutation obtained by performing the following operation once.
翻译中…
- For
$i = 1, 2, \ldots, N-1$in this order, if$P_i > P_{i+1}$, swap$P_i$and$P_{i+1}$.
翻译中…
You are given a sequence $Q = (Q_1, \ldots, Q_N)$ of length $N$. Each $Q_i$ is $-1$ or an integer between $1$ and $N$, inclusive.
翻译中…
Find the number, modulo $998244353$, of permutations $P$ of $(1, \ldots, N)$ such that, for every $i$, if $Q_i \neq -1$ then $Q_i = P'_i$.
翻译中…
Constraints
翻译中…
- All input numbers are integers.
$2 \leq N \leq 5000$- Each
$Q_i$is$-1$or an integer between$1$and$N$. - Each of
$1,2,\ldots,N$appears at most once in$Q$.
翻译中…
Input
翻译中…
The input is given from Standard Input in the following format:
翻译中…
N
Q_1 \ldots Q_N
翻译中…
Output
翻译中…
Print the answer.
翻译中…
样例
Input #1
4
-1 -1 2 4
Output #1
6
For example, $P = (3,1,4,2)$ satisfies the conditions. This can be confirmed by the following behavior of the operation.
- For $i=1$, since $P_1 > P_2$, swap $P_1$ and $P_2$, resulting in $P = (1,3,4,2)$.
- For $i=2$, since $P_2 < P_3$, do nothing.
- For $i=3$, since $P_3 > P_4$, swap $P_3$ and $P_4$, resulting in $P = (1,3,2,4)$.
- Thus, $P' = (1,3,2,4)$, satisfying $P'_3=2$ and $P'_4=4$.
There are six permutations $P$ that satisfy the conditions:
- $(1,3,4,2)$
- $(1,4,3,2)$
- $(3,1,4,2)$
- $(3,4,1,2)$
- $(4,1,3,2)$
- $(4,3,1,2)$
Input #2
6
-1 -1 -1 -1 2 -1
Output #2
120
Input #3
15
-1 -1 -1 -1 -1 4 -1 -1 -1 -1 7 -1 -1 -1 -1
Output #3
237554682
Remember to find the count modulo $998244353$.
题目信息
题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。