编程题
### 问题描述
宝玉作为贾府的少爷,每次出行可谓是风光无限,出行时随从数量极多,更是坐着象征尊贵的 "玲珑轿"。
贪玩的宝玉有一个初步的出行计划,这可以用一个长度为 $n$ 的字符串 $S$ 表示:如果第 $i$ 天宝玉打算出行,则 $S_i=1$;否则 $S_i=0$。
每次出行,宝玉都需要坐上 "玲珑轿"。如果没有干净的 "玲珑轿",则他不会出行。宝玉具有一定的洁癖,每次他使用过的 "玲珑轿" 都需要经过 $d$ 天的清洗和整理后才会再次使用。例如,某辆 "玲珑轿" 在第 $x$ 天使用了,那么它最快可以在第 $(x+d)$ 天再次使用。
接下来可能会发生 $q$ 个事件,事件包括以下两种:
1. 贾母对宝玉天天出行游玩早已不满,宝玉为了应对贾母,在某些时刻会更改自己的出行计划。贾母不在府上时,他可能会将某个 $S_x=0$ 变为 $S_x=1$;贾母在府上时也可能会将某个 $S_x=1$ 变为 $S_x=0$。
2. 在不断地修改出行计划同时,宝玉会随时询问作为管家的你,如果最初只有 $k$ 台 "玲珑轿" 可供使用,能否满足当前的出行计划。若能满足则输出 $-1$,否则输出最早无法成功出行的一天。
### 输入格式
第一行输入两个整数 $n,d$ $(1 \leq d \leq n \leq 2 \times 10^5)$,表示宝玉的出行计划天数和 "玲珑轿" 的使用间隔。
第二行输入一个长度为 $n$ 的 $01$ 字符串 $S$,表示宝玉最开始的出行计划。
第三行输入一个整数 $q$ $(1 \leq q \leq 2 \times 10^5)$,表示事件的数量。
接下来 $q$ 行,每行两个整数 $op,x$ $(1 \leq op \leq 2, 1 \leq x \leq n)$ 表示一次事件。
- 若 $op=1$,则将 $S_x$ 翻转,即 $1$ 变为 $0$,$0$ 变为 $1$。
- 若 $op=2$,则表示 $k=x$ 的一次查询。
### 输出格式
对于每个 $op=2$ 的查询,输出一行一个整数作为答案。
### 样例输入
```text
5 2
01010
3
2 1
1 3
2 1
```
### 样例输出
```text
-1
3
```
### 说明
第一次查询时,可以满足每天的出行需求,输出 $-1$。
第二次查询时,在第 $3$ 天没有 "玲珑轿" 使用。