A93035.「LNOI2022」串

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:512MB

题目描述

为了让你更好地理解题面,给出若干关于字符串的定义:

  • 对于一个字符串 S=s1s2snS = s_1 s_2 \cdots s_n,定义其长度为 S=n\lvert S \rvert = n
  • 对于两个字符串 S=s1s2snS = s_1 s_2 \cdots s_nT=t1t2tmT = t_1 t_2 \cdots t_m,称 TTSS 的子串,若 m=0m = 0(即 TT 为空串)或者 1ijn\exists 1 \le i \le j \le nT=sisi+1sjT = s_i s_{i + 1} \cdots s_j。若 m=0m = 0 或上述判断条件中 ii 可以取到 11,则称 TTSS 的前缀;若 m=0m = 0 或上述判断条件中 jj 可以取到 nn,则称 TTSS 的后缀。

给定一个英文小写字母构成的字符串 SS,你需要找到一个尽可能长的字符串序列 (T0,T1,,Tl)(T_0, T_1, \ldots, T_l),满足:

  • T0T_0SS 的子串;
  • 1il\forall 1 \le i \le lTiTi1=1\lvert T_i \rvert - \lvert T_{i - 1} \rvert = 1
  • 1il\forall 1 \le i \le l,存在 SS 的一个长度为 Ti+1\lvert T_i \rvert + 1 的子串 SiS'_i,使得 SiS'_i 的长度为 Ti1\lvert T_{i - 1} \rvert 的前缀为 Ti1T_{i - 1},长度为 Ti\lvert T_i \rvert 的后缀为 TiT_i

输出这样的字符串序列的长度的最大值(即 ll 的最大值)。

输入格式

本题有多组测试数据。输入的第一行为一个整数 TT,表示测试数据组数。对于每组测试数据,输入一行一个英文小写字母构成的字符串 SS

输出格式

对于每组测试数据输出一行一个整数,表示题目描述中字符串序列长度的最大值。

输入输出样例

  • 输入#1

    3
    abcd
    abab
    a
    

    输出#1

    2
    3
    0
    
首页