본문 바로가기
Log/Coding Test

Day86_Programmers Lv.1 '정수 내림차순으로 배치하기' Java

by uxia 2023. 12. 19.

프로그래머스 Lv.1 '정수 내림차순으로 배치하기' 자바

 

Q. 함수 solution은 정수 n을 매개변수로 입력받는다.

n의 각 자릿수를 큰 것부터 작은 순으로 정렬한 새로운 정수를 리턴하시오.

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

 


  
import java.util.Arrays;
class Solution {
public long solution(long n) {
long answer = 0;
String str = Long.toString(n);
char[] arr = str.toCharArray();
Arrays.sort(arr);
String newStr = new String();
for (int i = arr.length - 1; i >= 0; i--) {
newStr += arr[i];
}
answer = Long.parseLong(newStr);
return answer;
}
}

 

long n을 문자열로 변환한 뒤 char[] arr 배열에 넣는다.

이후 arr 배열을 오름차순으로 정리해주는 메서드 Arrays.sort()를 사용한다.

 

새로운 배열 newStr을 만들어 for문을 이용해

배열의 길이보다 하나 작으면서 0보다 큰 i를 산출해

새로운 배열에 넣는다.

 

마지막으로 배열을 long으로 변환해주고 답을 return해주면 된다.