AT_yahoo_procon2019_final_d Dangerous Hopscotch
题目描述
$N$ 块石头从左到右排成一列。最初,每一块石头上都没有放置任何障碍物,你可以随便坐。
输入格式
- `1 p` : 如果从左数第 $p_i$ 块石头上没有障碍物,就放置障碍物,如果放置的话就去除障碍物。不能坐在放置障碍物的石头上。
- `2 l r` : 从左数第 $l$ 个石头上开始,反复进行 “跳到右 $1$ 个石头” 、 “跳到右 $2$ 个的石头” 的操作,求出一次也不坐在放置障碍物的石头上而从第 $l$ 个石头到第 $r$ 个石头上的方法总数除以 $10^9+7$ 的余数,并输出。但是,在从左数第 $l$ 个或第 $r$ 个石头上有障碍物时,输出 $0$ 条。
输入以下形式
> $N$ $Q$ $Query_1$ : $Query_Q$
输出格式
`2 l r` 根据输入形式的查询回答,按照查询顺序分别输出一行。
## 样例 #1
### 样例输入 #1
```
7 3
2 4 7
1 3
2 1 7
```
### 样例输出 #1
```
3
3
```
## 样例 #2
### 样例输入 #2
```
10 10
2 2 7
1 3
2 2 3
2 1 2
1 5
2 5 8
2 1 6
2 3 4
1 2
2 1 10
```
### 样例输出 #2
```
8
0
1
0
1
0
0
```
说明/提示
### 规定条件
- $2\