AT_abc138_e [ABC138E] Strings of Impurity
题目描述
给定两个由小写英文字母组成的字符串 $s$ 和 $t$。请判断是否存在满足下述条件的整数 $i$ $(1 \leq i \leq 10^{100} \times |s|)$,如果存在,请求出满足条件的最小 $i$。
- 将字符串 $s$ 连续拼接 $10^{100}$ 次得到字符串 $s'$。$t$ 是字符串 ${s'}_1{s'}_2\ldots{s'}_i$(即 $s'$ 的前 $i$ 个字符)的一个子序列。
输入格式
输入以以下格式从标准输入读入。
> $s$ $t$
输出格式
如果存在满足条件的整数 $i$,请输出满足条件的最小值;如果不存在,请输出 `-1`。
说明/提示
## 注释
- 字符串 $a$ 的子序列是指从 $a$ 中删除 $0$ 个或多个字符后,按原有顺序连接剩下的字符所得到的字符串。例如,`contest` 的子序列包括 `net`、`c`、`contest` 等。
## 约束条件
- $1 \leq |s| \leq 10^5$
- $1 \leq |t| \leq 10^5$
- $s$ 和 $t$ 仅由小写英文字母组成。
# 样例解释 1
$t = \text{son}$ 是字符串 `contestcon`(即 $s' = \text{contestcontestcontest...}$ 的前 $10$ 个字符)的一个子序列,因此 $i = 10$ 满足条件。而 $t$ 不是字符串 `contestco`($s'$ 的前 $9$ 个字符)的子序列,因此 $i = 9$ 不满足条件。同理,$8$ 及以下的任意整数也不满足条件。因此,满足条件的最小整数 $i$ 为 $10$。
# 样例解释 2
$t = \text{programming}$ 不是 $s' = \text{contestcontestcontest...}$ 的子序列。因此,不存在满足条件的整数 $i$。
# 样例解释 3
虽然这里无法给出这样的样例,但请注意,答案可能不会落在 $32$ 位整数范围内。
由 ChatGPT 4.1 翻译