문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
제한사항
- n은 1이상 8000000000 이하인 자연수입니다.
입출력 예
코드
import java.util.*;
class Solution {
public long solution(long n) {
long answer = 0;
char[] ch = String.valueOf(n).toCharArray();
StringBuilder sb = new StringBuilder();
Arrays.sort(ch);
sb.append(ch).reverse();
answer = Long.parseLong(sb.toString());
return answer;
}
}
풀이
n을 문자형 배열로 만들어 정렬한 후 StringBuilder에 추가하고 reverse() 메서드를 이용해 오름차순으로 정렬한 값이 내림차순 정렬로 바뀔 수 있도록 해준다. 그 후 StringBuilder에 있는 값을 long형으로 변환해 answer에 저장한다.
'Coding Test' 카테고리의 다른 글
231012 콜라츠 추측 - Level 1 (0) | 2023.10.12 |
---|---|
231011 하샤드 수 - Level 1 (1) | 2023.10.11 |
231009 정수제곱근 판별 - Level 1 (0) | 2023.10.09 |
231009 문자열을 정수로 바꾸기 - Level 1 (0) | 2023.10.09 |
231008 문자열 내 p와 y의 개수 - Level 1 (0) | 2023.10.08 |