reverseInt 메소드는 int형 n을 매개변수로 입력받습니다.
n에 나타나는 숫자를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.
예를들어 n이 118372면 873211을 리턴하면 됩니다.
n은 양의 정수입니다.
풀이
import java.util.*;
public class ReverseInt {
public int reverseInt(int n){
String strNum = String.valueOf(n);
int[] arr = new int[strNum.length()];
for (int i = 0; i < arr.length; i++){
arr[i] = Integer.parseInt(String.valueOf(strNum.charAt(i)));
}
for (int i = 0; i < arr.length; i++){
for (int j = i+1; j < arr.length; j++){
if (arr[i] < arr[j]){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
String result = "";
for (int i = 0; i < arr.length; i++){
result += arr[i];
}
return Integer.parseInt(result);
}
// 아래는 테스트로 출력해 보기 위한 코드입니다.
public static void main(String[] args){
ReverseInt ri = new ReverseInt();
System.out.println(ri.reverseInt(118372));
}
}
'Algorithms > Programmers' 카테고리의 다른 글
Level 2 - 소수 찾기 (0) | 2018.02.20 |
---|---|
Level 2 - 콜라츠 추측 (0) | 2018.02.19 |
Level 1 - 최대공약수와 최소공배수 (0) | 2018.02.19 |
Level 1 - 나누어 떨어지는 숫자 배열 (0) | 2018.02.14 |
Level 1 - 문자열 내림차순으로 배치하기 (0) | 2018.02.14 |