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:
Here, the sequence l_i is non-decreasing.
How many values are possible for S after the M operations, modulo 1000000007(= 10^9+7)?
0
and 1
.The input is given from Standard Input in the following format:
N M S l_1 r_1 : l_M r_M
Print the number of the possible values for S after the M operations, modulo 1000000007.
5 2 01001 2 4 3 5
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
.
9 3 110111110 1 4 4 6 6 9
26
11 6 00101000110 2 4 2 3 4 7 5 6 6 10 10 11
143
Subtask | Score |
---|---|
1 | 100 |
2 | 0 |