AT_pakencamp_2022_day2_d Binary Strings
Description
`0` と `1` からなる長さ $ N $ の文字列であって $ 1 $ 以上 $ M $ 以下の全ての整数 $ i $ について次の条件を満たすものの個数を $ 998244353 $ で割った余りを求めてください。
- $ L_i $ 文字目から $ R_i $ 文字目の間に文字 $ C_i $ が存在する
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ M $ $ L_1 $ $ R_1 $ $ C_1 $ $ L_2 $ $ R_2 $ $ C_2 $ $ \vdots $ $ L_M $ $ R_M $ $ C_M $
Output Format
答えを $ 1 $ 行に出力せよ。
Explanation/Hint
### 小課題
1. ( $ 50 $ 点) $ N\leq 16, M\leq 16 $
2. ( $ 100 $ 点) $ N\leq 2000, M\leq 2000, C_i=0\,(1\leq i\leq M) $
3. ( $ 150 $ 点) $ C_i=0\,(1\leq i\leq M) $
4. ( $ 300 $ 点) 追加の制約はない
### Sample Explanation 1
`010`、`011`、`100`、`101`、`110` の $ 5 $ つが条件を満たす文字列です。
### Sample Explanation 2
`10101` や `00000` など合計 $ 13 $ 個の文字列が条件を満たします。
### Constraints
- $ 1\leq N\leq 2\times 10^5 $
- $ 1\leq M\leq 2\times 10^5 $
- $ 1\leq L_i\leq R_i\leq N\,(1\leq i\leq M) $
- $ C_i\in\lbrace 0,1\rbrace\,(1\leq i\leq M) $
- 入力は全て整数