title | excerpt | categories | tags | toc | toc_sticky | date | last_modified_at | ||||
---|---|---|---|---|---|---|---|---|---|---|---|
정수 내림차순으로 배치하기 |
프로그래머스 코딩 테스트 문제입니다. 자바를 이용하여 문제를 해결해봅시다! |
programmers |
|
true |
true |
2022-01-27 |
2022-01-27 |
함수 solution은 정수 n을 매개변수로 입력받습니다.
n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.
예를들어 n이 118372면 873211을 리턴하면 됩니다.
- n은 1이상 8000000000 이하인 자연수입니다.
정수를 문자열로 변환하여 각 값을 정렬한다.
import java.util.*;
class Solution {
public long solution(long n) {
long answer = 0;
String num = Long.toString(n);
String[] arr = num.split("");
Arrays.sort(arr, Collections.reverseOrder());
String temp = String.join("", arr);
answer = Long.parseLong(temp);
return answer;
}
}
toString()을 이용해 정수를 문자열로 변환하였다.
변환된 문자열을 split을 통해 각각 arr에 배치하였다.
배열을 내림차순으로 정리하고 join()으로 합친 후
parseLong()을 사용하여 숫자형태(long)으로 변환하였다.
프로그래머스 코딩테스트 연습 : 정수 내림차순으로 배치하기
https://programmers.co.kr/learn/courses/30/lessons/12933