AT_agc067_b [AGC067B] Modifications

Description

[problemUrl]: https://atcoder.jp/contests/agc067/tasks/agc067_b 長さ $ N $ の整数列 $ a=(a_1,a_2,\cdots,a_N) $ があります。 すべての要素ははじめ $ 0 $ です。 整数 $ C $ と $ M $ 個の区間 $ ([L_1,R_1],[L_2,R_2],\cdots,[L_M,R_M]) $ が与えられます。 あなたは、$ (1,2,\cdots,M) $ の順列 $ p $ と長さ $ M $ の整数列 $ w=(w_1,w_2,\cdots,w_M) $ を選びます。 ここで、$ 1\le\ w_i\le\ C $ でなければなりません。 そして、$ M $ 回の変更を行います。 $ i $ 回目の変更は以下です。 - $ a_{L_{p_i}},\ \cdots,\ a_{R_{p_i}} $ を $ w_i $ に変える。 $ a $ の中のすべての位置が少なくとも一つの区間に覆われることが保証されます。 すべての変更後の $ a $ としてありうるものの個数を求め、答えを $ 998244353 $ で割った余りを出力してください。

Input Format

N/A

Output Format

N/A

Explanation/Hint

### 制約 - $ 1\le\ N\le\ 100 $ - $ 1\le\ M\le\dfrac{N(N+1)}{2} $ - $ 1\le\ C\