還記得聖誕節那天,Fysty 班上的 $N$ 個有兩隻手的學生(包含 Fysty 本人)要一起玩交換禮物,禮物和學生的編號都是 $1, 2, \ldots, N$。所有學生一開始都會抽一支籤,接著用左手拎著自己準備的禮物、右手拿著籤;其中,編號為 $i$ 的學員抽到了編號為 $p_i$ 的禮物。因為一些魔法,編號相同的禮物和籤之間會互相吸引,使得學生們像是手牽手般地圍成一個個溫馨的「小圈圈」(然而,在一些可悲的情況下,不幸的學生可能會抽到自己的禮物,然後用自己的左手牽右手,但這也是個小圈圈)。在這溫馨的氛圍中,Fysty 體察了一個難忘的性質:每個小圈圈的「組成人數」都互不相同。
事隔一個月後的今天,Fysty 才發現自己重要的隨身碟弄丟了,他想起自己一定是在聖誕節那天,和小圈圈的同學們聊天的時候遺失的。於是他今天早上製作了一份表單,想調查每個人是否還記得自己所屬的小圈圈的大小,試圖以此還原當天的情景片段。回覆結果中,學生 $i$ 的填答內容是 $a_i$。如果 $a_i = -1$,代表學生 $i$ 忘記自己所屬的小圈圈大小了;如果 $a_i > 0$ ,代表學生 $i$ 的印象中,他所屬的小圈圈大小為 $a_i$。Fysty 很好奇在滿足所有人的印象的情況下,有幾種可能的抽籤結果。你可以幫幫他嗎?
因為可能性或許會太多,請輸出可能的抽籤結果數除以 $998244353$ 的餘數。
輸入的第一行包含一個正整數 $N$。
輸入的第二行包含 $N$ 個整數 $a_1, a_2, \ldots, a_N$。
輸出「滿足所有學生們的印象的抽籤結果數」除以 $998244353$ 的餘數。兩種抽籤結果 $\langle p_i \rangle_{i = 1}^ {N} = \langle p_1, p_2, \ldots, p_N \rangle, \langle p_i' \rangle_{i = 1}^ {N} = \langle p_1', p_2', \ldots, p_N' \rangle$ 被視為不同的抽籤結果若存在一個 $1 \le i \le N$ 滿足 $p_i \neq p_i'$。
No. | Testdata Range | Constraints | Score |
---|---|---|---|
1 | 0~7 | 範例測資。 | 0 |
2 | 8~42 | 小班制:$N \leq 8$ | 10 |
3 | 43~63 | 議論紛紛:$a_i \neq -1$ | 20 |
4 | 64~83 | 集體失憶:$a_i = -1$ | 20 |
5 | 0~94 | 順其自然:無額外限制。 | 50 |