AtCoder Regular Contest 065
F
Shuffling
AtCoder
⌀ 2652
原题
← E→
翻译中…

Problem Statement

翻译中…

There is a string $S$ of length $N$ consisting of characters 0 and 1. You will perform the following operation for each $i = 1, 2, ..., m$:

翻译中…
  • Arbitrarily permute the characters within the substring of $S$ starting at the $l_i$-th character from the left and extending through the $r_i$-th character.
翻译中…

Here, the sequence $l_i$ is non-decreasing.

翻译中…

How many values are possible for $S$ after the $M$ operations, modulo $1000000007(= 10^9+7)$?

翻译中…

Constraints

翻译中…
  • $2≦N≦3000$
  • $1≦M≦3000$
  • $S$ consists of characters 0 and 1.
  • The length of $S$ equals $N$.
  • $1≦l_i < r_i≦N$
  • $l_i ≦ l_{i+1}$
翻译中…

Input

翻译中…

The input is given from Standard Input in the following format:

翻译中…

N M
S
l_1 r_1
:
l_M r_M

翻译中…

Output

翻译中…

Print the number of the possible values for $S$ after the $M$ operations, modulo $1000000007$.

翻译中…

样例

Input #1
5 2
01001
2 4
3 5
Output #1
6
After the first operation, $S$ can be one of the following three: `01001`, `00101` and `00011`. After the second operation, $S$ can be one of the following six: `01100`, `01010`, `01001`, `00011`, `00101` and `00110`.
Input #2
9 3
110111110
1 4
4 6
6 9
Output #2
26
Input #3
11 6
00101000110
2 4
2 3
4 7
5 6
6 10
10 11
Output #3
143
题目信息
题号
arc065_d
时间限制
2 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。