AT_icpc2015summer_day2_f ほぼ周期文字列
题目描述
给定一个字符串 $S$,你需要处理 $Q$ 个查询。每个查询要求判断:能否通过修改 $S[l_i, r_i]$ 这个子串中的一个字符,使得其成为一个周期为 $t_i$ 的字符串。这里,$S[l, r]$ 表示字符串 $S$ 从第 $l$ 个字符到第 $r$ 个字符的子串。
如果一个字符串 $W$ 是周期为 $t$ 的,那么对于所有满足 $1 \leq i \leq |W| - t$ 的位置 $i$,都有 $W_i = W_{i+t}$。
### 输入格式
从标准输入读取数据,格式如下:
```
S Q
l_1 r_1 t_1
...
l_Q r_Q t_Q
```
### 输出格式
对于每个查询,输出 `Yes` 或 `No`,共 $Q$ 行,用于表示是否可以通过修改一个字符使子串达到要求。
### 数据范围与提示
- 字符串长度 $|S|$ 的范围是 $1 \leq |S| \leq 10^5$。
- 查询个数 $Q$ 的范围是 $1 \leq Q \leq 10^5$。
- 每个查询中的 $l_i$ 和 $r_i$ 满足 $1 \leq l_i \leq r_i \leq |S|$。
- 周期 $t_i$ 满足 $1 \leq t_i \leq r_i - l_i + 1$。
- 字符串 $S$ 仅由小写字母组成。
### 示例
#### 输入
```
abcabcaxcabc
4
1 9 3
8 12 3
1 4 2
2 3 2
```
#### 输出
```
Yes
Yes
No
Yes
```
#### 输入
```
isuruu
4
3 6 1
3 6 2
3 6 3
2 4 1
```
#### 输出
```
Yes
Yes
Yes
No
```
**本翻译由 AI 自动生成**
输入格式
无
输出格式
无
说明/提示
### Constraints
文字列 $ S $ が与えられる。この文字列 $ S $ に対し、$ Q $ 個のクエリに答えよ。 $ i $ 番目のクエリでは、$ S[l_i,\ r_i] $ から1文字まで変えてよいとき、$ S[l_i,\ r_i] $ を周期 $ t_i $ の文字列にできるかどうかを判定せよ。$ S[l,\ r] $ は文字列 $ S $ の $ l $ 文字目から $ r $ 文字目までの部分文字列を表す。
文字列 $ W $ が周期 $ t $ の文字列であるとは、 $ i\ =\ 1,\2,\...\ ,\ |W|-t $ に対し、 $ W_{i}\ =\ W_{i+t} $ となることとする。
- - - - - -
- $ 1\ \leq\ |S|\ \leq\ 10^5 $
- $ 1\ \leq\ Q\ \leq\ 10^5 $
- $ 1\ \leq\ l_i\ \leq\ r_i\ \leq\ |S| $
- $ 1\ \leq\ t_i\ \leq\ r_i-l_i+1 $
- $ S $はアルファベットの小文字のみからなる