题目简介:
描述:输入一串数字,找到其中包含的最大递增数。 递增数是指相邻的数位从小到大排列的数字。
如: 2895345323,递增数有:289,345,23, 那么最大的递减数为345。
运行时间限制:无限制内存限制:无限制输入:
输入一串数字,默认这串数字是正确的,即里面不含有字符/空格等情况输出 :输出最大递增数
样例输入:123526897215
样例输出:2689
网上也有很多代码,基本都是C++写的,而且比较繁琐。我自己写的JAVA代码反而比较简单,不知道是不是考虑不全,欢迎指出。
import java.util.Scanner;
public class test {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
String num2=String.valueOf(in.nextLong());
char[] num=num2.toCharArray();
int max=0;
int temp;
int flag=0;
for(int i=1;i<num.length;i++){//找到递增数后比较大小
if(num[i]<num[i-1]){
temp=Integer.parseInt(num2.substring(flag, i));
if(temp>max)
max=temp;
flag=i;
}
}
System.out.println(max);
}
}