題目簡介:
描述:輸入一串數字,找到其中包含的最大遞增數。 遞增數是指相鄰的數位從小到大排列的數字。
如: 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);
}
}