输入一个字符串仅包含大小写字母和数字
求字符串中包含的最长的非严格递增连续数字序列长度
比如:
12234属于非严格递增数字序列
输入一个字符串仅包含大小写字母和数字
输出字符串中包含的最长的非严格递增连续数字序列长度
abc2234019A334bc
4
2234
为最长的非严格递增连续数字序列,所以长度为4
import java.util.Scanner;
/**
* Created with IntelliJ IDEA.
* Author: Amos
* E-mail: amos@amoscloud.com
* Date: 2021/5/7
* Time: 17:28
* Description:
*/
public class Main0050 {
public static void main(String[] args) {
try (Scanner scanner = new Scanner(System.in)) {
String line = scanner.nextLine();
solution(line);
}
}
private static void solution(String line) {
char[] chars = line.toCharArray();
int curLen = 0, maxLen = 0;
char last = 'a';
for (char cur : chars) {
if (Character.isDigit(cur)) {
if (curLen == 0 || cur >= last) {
curLen++;
} else {
if (curLen > maxLen) {
maxLen = curLen;
}
curLen = 1;
}
last = cur;
} else {
if (curLen > maxLen) maxLen = curLen;
curLen = 0;
last = 'a';
}
}
maxLen = Math.max(curLen, maxLen);
System.out.print(maxLen);
}
}