字符串运用-密码截取

Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的密码进行通信,比如像这些ABBA,ABA,A,123321,但是他们有时会在开始或结束时加入一些无关的字符以防止别国破解。比如进行下列变化 ABBA->12ABBA,ABA->ABAKK,123321->51233214 。因为截获的串太长了,而且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathcer的工作量实在是太大了,他只能向电脑高手求助,你能帮Catcher找出最长的有效密码串吗?

输入描述:

输入一个字符串

输出描述:

返回有效密码串的最大长度

输入例子:

ABBA

输出例子:

4

import java.util.Scanner;

/**
 * Created by Administrator on 2016/8/28.
 */
public class Main
{
    public static void main(String[]args)
    {
        Scanner sc=new Scanner(System.in);
        while (sc.hasNext())
        {
            String input=sc.next();
            char[] chars = input.toCharArray();
            int max=0;
            if (input.length()>0)
            {
                int size=input.length();
                max=1;
                for (int i = 0; i <size-1 ; i++)
                {
                    int count=0;
                    for (int j = i,k=i+1; j >=0&&k<size ; j--,k++)
                    {
                        if (chars[j]==chars[k])
                        {
                           count+=2;
                        }
                        else
                        {
                            break;
                        }
                    }
                    if (count>max)max=count;
                    count=1;
                    if (i>=1)
                    {
                        for (int j = i-1,k=i+1; j >=0&&k<size; j--,k++)
                        {
                            if (chars[j]==chars[k])
                            {
                                count+=2;
                            }
                            else
                            {
                                break;
                            }
                        }
                        if (count>max)max=count;
                    }
                }
            }
            System.out.println(max);
        }
    }
}
阅读更多
文章标签: 加密 字符串截取
个人分类: JAVA
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

字符串运用-密码截取

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭