AT_arc065_d [ARC065F] シャッフル
Description
[problemUrl]: https://atcoder.jp/contests/arc065/tasks/arc065_d
長さ $ N $ の `0`、`1` からなる文字列 $ S $ があります。あなたは、以下の操作を各 $ 1≦i≦M $ に対し $ i $ の昇順に行います。
- $ S $ のうち、左から $ l_i $ 文字目から $ r_i $ 文字目までの部分文字列を自由な順番で並び替える。
ただし、$ l_i $ は非減少です。
$ M $ 回の操作後の $ S $ としてありうるものの数を $ 1000000007(=\ 10^9+7) $ で割った余りを求めてください。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 2≦N≦3000 $
- $ 1≦M≦3000 $
- $ S $ は`0`, `1` からなる。
- $ S $ の長さは $ N $ と等しい。
- $ 1≦l_i\