華爲2014機試樣題2:求最大遞增數

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章