AT_jag2017summer_day1_f 極小部分列
题目描述
给出字符串 $s$ 和 $q$ 个查询,每个查询给出一个字符串 $t_i$。
你需要求出:在 $s$ 的最短的包含 $t_i$ 的子串中,最靠左边的那段的左右端点。
输入格式
第一行:字符串 $s$,长度不超过 $10^5$。
第二行:询问次数 $q$,不超过 $10^5$。
第三行开始的 $q$ 行:每行一个字符串 $t_i$。
保证:$s$ 和每个 $t_i$ 均由小写英文字母组成,且 $\sum |t_i|\le 10^5$ 。
输出格式
对于每个询问,输出一行。
- 若不存在此种子串,输出`-1`;
- 否则,输出两个以单个空格隔开的两个正整数 $l$ 和 $r$,为题目所求。
说明/提示
### 制約
- $ 1≦|S|≦10^5 $
- $ 1≦Q≦10^5 $
- $ 1≦|T_i| $
- $ |T_i| $ の和は $ 10^5 $ を越えない
- $ S,\ T_i $ は小文字アルファベットのみからなる
### Sample Explanation 1
$ 1 $ 番目のクエリについて説明します。 答えは $ 2 $ 文字目から $ 4 $ 文字目までの部分文字列 `axb` となります。 他にも $ 5 $ 文字目から $ 6 $ 文字目までの部分文字列 `ab` も $ T_1 $ を部分列として含む極小な部分文字列ですが、`axb` の方が左にあるためこちらは答えとはなりません。 また、`aaxb` は極小ではありません。 なぜなら `axb` という $ T_i $ を部分列として含むような部分文字列を含むためです。