zoukankan      html  css  js  c++  java
  • 在字符串中找出连续最长的数字串

    此博客链接:

    在字符串中找出连续最长的数字串

    题目链接:https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec?tpId=37

    题目

    输出描述:

    输出字符串中最长的数字字符串和它的长度,中间用逗号间隔。如果有相同长度的串,则要一块儿输出(中间不要输出空格)。

    示例1

    输入:
    abcd12345ed125ss123058789
    a8a72a6a5yy98y65ee1r2
    输出:
    123058789,9
    729865,2

    题解

     初步想法是,先找到字符串中数字字符串,用数组保存下来,只要后一个数字字符串长度不小于前一个字符串的长度,就保存到数组中,最后比较数组中的元素,输出较大的数字字符串。但是这个想法的难点在于,如何能在字符串中找到数字,并且还需要先把所有的数字保存下来,然后在做比较。看到一个很好的理解,就是把不是数组的字符全变成同一个字符,然后用这个字符进行分割,就能把所有的数字分割出啦,找出数字中最长的字符串,最后输出等于最长字符串的数字字符即可。这里需要注意:在输出相同长度的数字字符串时,不要换行,最后把长度也输出。

    代码

    import java.util.*;
    public class Main{
        public static void main(String args[]){
          
            Scanner sc=new Scanner(System.in);
            while(sc.hasNext()){
                String str="";
                String temp=sc.nextLine();
                for(char c:temp.toCharArray()){
                    if(c>='0' && c<='9'){
                        str+=c;
                    }
                    else{
                        str+='a';
                    }
                }
                String res[] =str.split("a");
                int count=0;//记录最长的数字长度
                    for(int i=0;i<res.length;i++)
                    {
                        int len=res[i].length();
                        if(len>=count)
                        {
                            count=len;
                        }
                    }
                for(String st:res)
                    {
                        int len=st.length();
                        if(len==count)
                        {
                            System.out.print(st);
                        }
                    }
                    System.out.println(","+count); 
            }
            
        }
    }

    结果

    出来混总是要还的
  • 相关阅读:
    函数详解
    print()函数知识点总结
    python基本数据类型-字符串常用操作
    2020.7.17第十二天
    2020.7.16第十一天
    2020.7.15第十天
    2020.7.14第九天
    2020.7.13第八天
    2020.7.12第七天
    2020.7.11第六天
  • 原文地址:https://www.cnblogs.com/ping2yingshi/p/15241234.html
Copyright © 2011-2022 走看看