티스토리 뷰
문제
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 |
댓글