题目网址:https://www.nowcoder.com/questionTerminal/bd891093881d4ddf9e56e7cc8416562d
while(cur < arr.length){
只是往后移,在这里面操作就行了
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
String str = scanner.nextLine();//注意这里很坑,一定要nextLine这是包括换行的意思了
char[] chars = str.toCharArray();
int index = 0;
int biglen = 0;
int cur = 0;
while (cur < chars.length){
int curline = 0;
if (cur < chars.length && chars[cur] > ' '
&& chars[cur] <= '9'){
while (cur < chars.length && chars[cur] > ' '
&& chars[cur] <= '9'){
curline++;
cur++;
if (curline > biglen){
biglen = curline;
index = cur - biglen ;
}
}
}else {
cur++;
}
}
for (int i = 0;i < biglen;i++){
System.out.print(chars[index+i]);
}
}
}
}
简化后
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
String str = scanner.nextLine();
int max = 0;
int end = 0;
for (int i = 0; i < str.length(); i++) {
int count = 0;
while (i < str.length() && str.charAt(i) >= '0'
&& str.charAt(i) <= '9' ){
count++;
i++;
if (count > max){
max = count;
end = i - 1;
}
}
}
System.out.println(str.substring(end - max + 1,end + 1));
}
}
}