#P1145. 首尾呼应

    ID: 157 传统题 1000ms 128MiB 尝试: 0 已通过: 0难度: 普及 ← 上一题 下一题 → 随机一题 上传者: 标签 字符串 KMP 前缀函数
显示设置

首尾呼应

题目描述

一段密码串 ss 只由小写字母组成,长度为 nn。

如果 ss 的某段前缀和某段后缀完全相同(两段长度相同、可以互相重合,但不能把整个串完全覆盖住),就把这个长度称为一个「呼应」。

请按长度从小到大输出所有呼应长度。

输入格式

一行一个字符串 ss。

输出格式

一行,按升序输出所有呼应长度,用空格分隔。如果不存在任何呼应,输出 0。

输入输出样例 #1

输入 #1

abacaba

输出 #1

1 3

说明

数据范围

  • 对于 100%100\% 的数据,1≤n≤1061\le n\le 10^6,字符串只含小写字母。

样例说明:长度为 11 的前缀 a 与后缀 a 相同;长度为 33 的前缀 aba 与后缀 aba 相同,所以答案是 1 3。