最长的对称有效密码串长度

字符串运用-密码截取

http://www.nowcoder.com/questionTerminal/12e081cd10ee4794a2bd70c7d68f5507

import java.util.Scanner;


public class Main{

    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            String str = sc.nextLine();
            StringBuilder sb = new StringBuilder();
            sb.append(str);
            sb.reverse();
            int max = 0;
            for(int i = 0 ;i < str.length(); i++){
                for(int j = i + 1; j < str.length(); j++){
                    if(str.contains(sb.substring(i,j))){
                        if(j - i > max){
                            max = j - i;
                        }
                    }
                }
            }

            System.out.println(max);
        }
    }
}
全部评论
此算法有瑕疵
1 回复 分享
发布于 2021-06-15 17:25
为何在本地IDE上输入ABBA后,输出的是3,而程序却是可以通过呢?
点赞 回复 分享
发布于 2020-08-20 21:07
并不能处理所有情况呀。
点赞 回复 分享
发布于 2020-09-15 09:44
边界问题 j<=str.length()
点赞 回复 分享
发布于 2021-09-04 17:02
str.contains(sb.substring(i,j) 即使原字符串反转后截取的子串包含在原字符串中,好像也不能说明这个子串就一定是回文字符串吧?比如有字符串:abcfhcba,反转后是abchfcba,截取的"abc"在原字符串中,但"abc"不属于回文字符串。
点赞 回复 分享
发布于 2021-09-11 11:03

相关推荐

11-06 10:58
已编辑
门头沟学院 嵌入式工程师
双非25想找富婆不想打工:哦,这该死的伦敦腔,我敢打赌,你简直是个天才,如果我有offer的话,我一定用offer狠狠的打在你的脸上
点赞 评论 收藏
分享
11-07 13:31
怀化学院 Java
勇敢牛牛不怕难:又疯一个
点赞 评论 收藏
分享
评论
7
1
分享
牛客网
牛客企业服务