rgnerdplayer 出不出題目了!他決定打開 IOIC(Intelligent Olmrgcsi's Iconical Class) 的數學講義,看到例題 1-11 是停車問題:停車場有 $n$ 個空的停車位,左到右編號為 $1, 2, \ldots,n$,有 $n$ 台車想進去停車,第 $i$ 台車想停在 $p_i (1 \leq p_i \leq n)$ 這個位置,如果 $p_i$ 這個位置已經有其他台車時,這台車就會往右找到第一個可以停車的車位停進去,如果找不到這台車就會開出停車場。求有多少個陣列 $(p_1, p_2, \ldots, p_n)$ 使得每一台車最終都會停在停車場中?(注意 $p_i$ 沒有互不相同)
rgnerdplayer 覺得用對稱性算方案數太無趣了,因此他決定修改一下停車問題。陣列 $p$ 中的某一些元素被事先指定了,你要算出有多少個 $p$ 符合停車問題的要求。由於答案可能很大,輸出方案數模 $998244353$。
輸入第一行有一個正整數 $n$,表示陣列 $p$ 的大小。
輸入第二行有 $n$ 個整數 $p_1, p_2, \ldots, p_n$。如果 $p_i = 0$,表示 $p_i$ 沒有被指定,反之 $p_i$ 被給定爲輸入的值。
輸出一個整數代表答案。
IOICamp 2023 Day2 pE
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~3 | 範例測資 | 0 |
2 | 0, 2, 4~21 | $n \leq 8$ | 20 |
3 | 2, 22~41 | $p_i = 0$ | 20 |
4 | 0~72 | 無其他限制 | 60 |