题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec
import java.util.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (in.hasNext()) { // 注意 while 处理多个 case String str = in.nextLine(); int maxLength = 0; ArrayList<Integer> index = new ArrayList<>(); for(int i = 0;i < str.length();i++){ for(int k = str.length();k>i;k--){ if(str.substring(i,k).replaceAll("[0-9]","").length() == 0){ if((k-i) == maxLength){ index.add(i); break; }else if((k-i) > maxLength){ maxLength = k-i; index.clear(); index.add(i); break; } } } } for(int i:index){ System.out.print(str.substring(i,i+maxLength)); } System.out.print("," + maxLength); } } }
我觉得我写的很优雅。