#ABC135F. 永恒字符串

永恒字符串

永恒字符串

题目描述

给定两个由小写英文字母组成的字符串 s,ts, t。判断满足以下条件的非负整数 ii 的个数是否有限,如果有限,求出这样的 ii 的最大值。

  • 存在某个非负整数 jj,使得把 tt 连接 ii 个得到的字符串,是把 ss 连接 jj 个得到的字符串的子串。

提示

  • 字符串 aa 是字符串 bb 的子串,是指存在某个整数 xx (0xba0 \le x \le |b| - |a|),使得对任意整数 yy (1ya1 \le y \le |a|) 都有 ay=bx+ya_y = b_{x+y}

  • 对任意字符串,把它连接 00 个得到的字符串是空字符串。另外,根据上述定义,空字符串是任意字符串的子串。因此,对任意两个字符串 s,ts, t,i=0i = 0 都满足题目描述中的条件。

输入格式

输入按以下格式从标准输入给出:

ss
tt

输出格式

如果满足条件的非负整数 ii 的个数有限,则输出这样的 ii 的最大值;如果无限,则输出 -1

样例

abcabab
ab
3

tt 连接 33 个得到的字符串 ababab 是把 ss 连接 22 个得到的字符串 abcabababcabab 的子串,因此 i=3i = 3 满足条件。

另一方面,把 tt 连接 44 个得到的字符串 abababab 无论把 ss 连接多少个都不会作为子串出现,因此 i=4i = 4 不满足条件。

同理,任意大于等于 55 的整数也不满足条件。因此满足条件的非负整数 ii 的个数有限,其最大值是 33

aa
aaaaaaa
-1

对任意非负整数 ii,把 tt 连接 ii 个得到的字符串都是把 ss 连接 4i4i 个得到的字符串的子串。因此满足条件的非负整数 ii 有无限多个。

aba
baaab
0

如提示中所述,i=0i = 0 必定满足条件。

数据范围

  • 1s5×1051 \le |s| \le 5 \times 10^5
  • 1t5×1051 \le |t| \le 5 \times 10^5
  • s,ts, t 由小写英文字母组成
难度 提高+/省选
通过率
尝试 0
已通过 0
ID
1757
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签