zoukankan      html  css  js  c++  java
  • 1229:密码截获----java

    题目描述

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

    输入

    测试数据有若干行字符串,包括字母,数字,符号。(字母区分大小写)

    输出

    与输入相对应每一行输出一个整数,代表最长有效密码串的长度。

    样例输入

    ABBA
    12ABBA
    A
    ABAKK
    51233214
    abaaab
    

      

    样例输出

    4
    4
    1
    3
    6
    5
    

      

    代码

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            String str=sc.nextLine();
            sc.close();
            char[] ch=str.toCharArray();
            System.out.println(subPWD(ch));
        }
        public static int subPWD(char[] ch){
            int max=1;
            int ind=0;
            char[] ch2=new char[ch.length];
            for(int i=ch.length-1;i>=0;i--){
                ch2[ind++]=ch[i];
            }                                                  
            for(int m=0;m<ch.length;m++){
                for(int n=0;n<ch.length;n++){
                    if(ch[m]==ch2[n]){
                        int count=1;
                        int l=m;     
                        int k=n;     
                        while(l<ch.length-1  &&  k<ch.length-1){
                            if(ch[++l]==ch2[++k]){
                                count++;
                            }
                            else{
                                break;
                            }
                        }
                        if(count>max){
                            max=count;
                        }
                    }
                } 
            }
        return max; 
        }
    }
    

      

  • 相关阅读:
    详解ASP.NET的内置对象
    如何架设FTP服务器
    输出JSON问题
    new , virtual , override
    Javascript 操作select控件大全(新增、修改、删除、选中、清空、判断存在等)
    Java回顾之I/O
    数据结构之栈和队列
    Java回顾之多线程同步
    设计模式之行为型模式
    Java回顾之网络通信
  • 原文地址:https://www.cnblogs.com/asndxj/p/9177195.html
Copyright © 2011-2022 走看看