题解 | #在字符串中找出连续最长的数字串#

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

https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        test92();
    }

    public static void test92() {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) {
            String str1 = in.nextLine();

            List<String> list = new ArrayList<>();
            char[] ch = str1.toCharArray();
            for (int i = 0; i < ch.length; i++) {
                if (ch[i] >= '0' && ch[i] <= '9') {
                    list.add(String.valueOf(ch[i]));
                    if (i + 1 == ch.length) {
                        continue;
                    }
                    for (int j = i + 1; j < ch.length; j++) {
                        if (ch[j] >= '0' && ch[j] <= '9') {
                            list.add(str1.substring(i, j + 1));
                        } else {
                            break;
                        }
                    }
                }
            }
            int max = 1;
            for (int i = 0; i < list.size(); i++) {
                max = Math.max(max, list.get(i).length());
            }

            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < list.size(); i++) {
                if (list.get(i).length() == max) {
                    sb.append(list.get(i));
                }
            }
            System.out.println(sb + "," + max);
        }
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 13:54
点赞 评论 收藏
分享
05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务