✔ 정수 내림차순으로 배치하기
문제 분석하기
정수를 문자열로 변환한 후, char 배열에 저장하여 정렬 및 반환
손으로 풀어보기
- 정수를 문자열로 변환하여 char 배열에 저장
- char 배열 정렬
- char 배열의 값을 뒤집은 후 형변환하여 반환
슈도코드 작성하기
n(정수)
number(정수의 값을 담은 char 배열)
number 정렬
answer(n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 StringBuilder)
for(ch -> number만큼) {
answer에 ch 저장
}
answer을 뒤집은 후 형변환하여 반환
코드 구현하기
/**
* 12933) 정수_내림차순으로_배치하기
*/
public class L020_12933 {
// n(정수)
public long solution(long n) {
// number(정수의 값을 담은 char 배열)
char[] number = Long.toString(n).toCharArray();
// number 정렬
Arrays.sort(number);
// answer(n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 StringBuilder)
StringBuilder answer = new StringBuilder();
for (char ch : number) {
// answer에 ch 저장
answer.append(ch);
}
// answer을 뒤집은 후 형변환하여 반환
return Long.parseLong(answer.reverse().toString());
}
// 테스트 케이스
public static void main(String[] args) {
L020_12933 solution = new L020_12933();
long n = 118372;
long result = solution.solution(n);
System.out.println(result);
}
}
'Coding Test > Java 알고리즘 실전' 카테고리의 다른 글
[12935] 제일 작은 수 제거하기 (0) | 2023.12.27 |
---|---|
[12934] 정수 제곱근 판별 (0) | 2023.12.27 |
[12932] 자연수 뒤집어 배열로 만들기 (0) | 2023.12.27 |
[12931] 자릿수 더하기 (0) | 2023.12.27 |
[12930] 이상한 문자 만들기 (0) | 2023.12.27 |