rt,题目如下:
给定一个仅由 '(' 和 ')' 组成的字符串 S,求其不同的有效括号子序列的个数。子序列不要求连续,但不同的位置选择视为不同的子序列,即使它们形成的括号序列相同。
有效括号子序列必须满足:
由于答案可能很大,请输出结果对 109+7 取模后的值。
输入第一行包含一个整数 T,表示测试数据组数。
接下来 T 行,每行一个字符串 S。
输出 T 行,每行一个整数,表示对应答案。
3
()
()()
(())
1
3
2
第三组数据中,字符串 (())
的有效子序列为:
()
()
()
()
(())
()
,满足条件。对于所有测试点,保证 1≤T≤10,1≤∣S∣≤1000。
给定一个字符串 S 和一个整数 k,找出 S 中最长的子串,该子串至少出现 k 次(出现位置可以重叠)。若存在多个最长子串,输出任意一个;若不存在,输出 -1
。
第一行输入整数 T,表示数据组数。
每组数据包含两行:第一行为字符串 S,第二行为整数 k。
输出 T 行,每行一个字符串或 -1
。
2
ababa
2
aaaaa
3
aba
aaa
对于所有测试点,保证 1≤T≤10,2≤k≤∣S∣,1≤∣S∣≤104。
给定一个字符串 S,将其分割成若干子串,使得每个子串都是回文。求最少需要分割几次。若无法分割,输出 -1
。
第一行输入整数 T,表示数据组数。
接下来 T 行,每行一个字符串 S。
输出 T 行,每行一个整数。
3
aab
a
ab
1
0
-1
对于所有测试点,保证 1≤T≤10,1≤∣S∣≤1000。
给定两个字符串 A 和 B,求将 A 转换为 B 所需的最小操作次数。允许的操作包括:插入一个字符、删除一个字符、替换一个字符。
第一行输入整数 T,表示数据组数。
每组数据包含两行:第一行为字符串 A,第二行为字符串 B。
输出 T 行,每行一个整数。
2
kitten
sitting
abc
abd
3
1
对于所有测试点,保证 1≤T≤10,1≤∣A∣,∣B∣≤1000。