atcoder#ABC135F. [ABC135F] Strings of Eternity
[ABC135F] Strings of Eternity
题目描述
英小文字からなる二つの文字列 が与えられます。次の条件を満たす非負整数 の個数が有限であるか判定し、有限である場合はそのような の最大値を求めてください。
- ある非負整数 が存在し、 を 個連結して得られる文字列は、 を 個連結して得られる文字列の部分文字列である。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
条件を満たす非負整数 の個数が有限である場合はそのような の最大値を、無限である場合は -1
を出力せよ。
题目大意
给两个字符串和,记符号表示字符串重复次。 定义一个正整数合法,当且仅当满足:存在一个正整数 ,使得是 的子串 找到最大的合法正整数 ,或者判断可以取到无穷大。 |?|,|?|≤500,000
abcabab
ab
3
aa
aaaaaaa
-1
aba
baaab
0
提示
注記
- 文字列 が文字列 の部分文字列であるとは、ある整数 が存在して任意の整数 に対して であることです。
- 任意の文字列に対し、それを 個連結して得られる文字列は空文字列であるとします。また、上記の定義より、空文字列は任意の文字列の部分文字列です。したがって、任意の二つの文字列 に対して は問題文中の条件を満たします。
制約
- は英小文字からなる。
Sample Explanation 1
を 個連結して得られる文字列 ababab
は、 を 個連結して得られる文字列 abcabababcabab
の部分文字列であるため、 は条件を満たします。 一方で、 を 個連結して得られる文字列 abababab
は、 を何個連結しても部分文字列として現れないため、 は条件を満たしません。 同様に、 以上の任意の整数も条件を満たしません。よって条件を満たす非負整数 の個数は有限で、その最大値は です。
Sample Explanation 2
任意の非負整数 に対し、 を 個連結して得られる文字列は、 を 個連結して得られる文字列の部分文字列です。したがって条件を満たす非負整数 は無限に存在します。
Sample Explanation 3
注記で述べたように、 は必ず条件を満たします。