求有专题

给定n个字符串s[1...n], 求有多少个数对(i, j), 满足i < j 且 s[i] + s[j] == s[j] + s[i]?

题目 思路: 对于字符串a,b, (a.size() < b.size()), 考虑对字符串b满足什么条件: 由1、3可知a是b的前后缀,由2知b有一个周期是3,即a.size(),所以b是用多个a拼接而成的,有因为a是b的前后缀,所以a和b的循环节相同,且a,b均恰好由整数个循环节组成。循环节长度 = 字符串长度 - 最大公共前后缀长度。

poj 2955 Brackets(区间DP,经典问题)求有规律的括号的最大长度

1、http://poj.org/problem?id=2955 2、题目大意 给出一个只包含()[]的字符序列,求出该字符序列中有规律的符号序列的最长长度 有规律的序列要求如下: the empty sequence is a regular brackets sequence,if s is a regular brackets sequence, then (s) and [s] a