티스토리 뷰

문제


reverseInt 메소드는 int형 n을 매개변수로 입력받습니다.

n에 나타나는 숫자를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.


예를 들어 n이 118372면 873211 을 리턴하면 됩니다.

n은 양의 정수 입니다.


풀이(Java)


public class ReverseInt {
	public int reverseInt(int n){
		String numStr = String.valueOf(n);
		int [] arr = new int[numStr.length()];
		int temp = 0;
		int result = 0;
		for(int i=0; i<numStr.length(); i++) {
			arr[i] = Integer.parseInt(numStr.substring(i, i+1));
		}
		// 정렬
		for(int i=0; i<arr.length; i++) {
			for(int j=0; j<arr.length-1; j++) {
				if(arr[j] < arr[j+1]) {
					temp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = temp;
				}
			}
		}
		StringBuffer sb = new StringBuffer();
		for(int i=0; i<arr.length; i++) {
			sb.append(arr[i]);
		}
		result = Integer.parseInt(sb.toString());
		return result;
	}
  
	// 아래는 테스트로 출력해 보기 위한 코드입니다.
	public static void  main(String[] args){
		ReverseInt ri = new ReverseInt();
		System.out.println(ri.reverseInt(118372));
	}
}


'Programmers' 카테고리의 다른 글

[Level.2] 2016년  (0) 2017.12.01
[Level.2] 소수 찾기  (0) 2017.12.01
[Level.2] 콜라즈 추측  (0) 2017.11.09
[Level.2] 최솟값 만들기  (0) 2017.11.09
[Level.2] 하샤드 수  (0) 2017.11.08
댓글