有一个字符串。求除去字符串本身以外,这个字符串最大的公共前后缀的长度是多少? 例如,对于字符串ABABA而言,“ABA”即是它的前缀,也是它的后缀,且是最长的公共前后缀,因此最大的长度是3。 给定一个只包含大写字母的字符串s,返回除去字符串本身以外公共前后缀最大长度,如果没有任何一个公共前后缀满足要求,返回-1即可。
示例1
输入
"ABA"
输出
1
说明
字符串“A”为所求
示例2
输入
"ABC"
输出
-1
说明
显然除去该字符串本身以外,不存在任何一个满足要求的公共前后缀
加载中...
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s * @return int整型 */ public int solve (String s) { // write code here } }
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s * @return int整型 */ int solve(string s) { // write code here } };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 # @param s string字符串 代表题意中的字符串s # @return int整型 # class Solution: def solve(self , s ): # write code here
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s * @return int整型 */ function solve( s ) { // write code here } module.exports = { solve : solve };
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 # @param s string字符串 代表题意中的字符串s # @return int整型 # class Solution: def solve(self , s ): # write code here
package main /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s * @return int整型 */ func solve( s string ) int { // write code here }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 * @param s string字符串 代表题意中的字符串s * @return int整型 */ int solve(char* s ) { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # 给定一个字符串s,返回具有相同前缀后缀的子串的第二大长度,反之,返回-1即可。 # @param s string字符串 代表题意中的字符串s # @return int整型 # class Solution def solve(s) # write code here end end
"ABA"
1
"ABC"
-1