AT_abc387_f [ABC387F] Count Arrays
Description
正整数 $ N,M $ および、各要素が $ 1 $ 以上 $ N $ 以下の整数である長さ $ N $ の数列 $ A=(A_1,A_2,\dots,A_N) $ が与えられます。
各要素が $ 1 $ 以上 $ M $ 以下の整数である長さ $ N $ の数列 $ x=(x_1,x_2,\dots,x_N) $ のうち、以下の条件を満たすものの数を $ 998244353 $ で割った余りを求めてください。
- 全ての $ i\ (1\leq i\leq N) $ について、 $ x_i \leq x_{A_i} $
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ M $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $
Output Format
答えを出力せよ。
Explanation/Hint
### Sample Explanation 1
$ x=(1,1,1),(2,2,1),(2,2,2),(3,3,1),(3,3,2),(3,3,3) $ が条件を満たします。
### Constraints
- $ 1\leq N,M \leq 2025 $
- $ 1\leq A_i\leq N $
- 入力は全て整数