프로그래머스/프로그래머스 - JAVA

[JAVA] 정수 내림차순으로 배치하기

메타듀 2023. 2. 21. 13:47
728x90
반응형

문제 설명

함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.

[제한 조건]
n은 1이상 8000000000 이하인 자연수입니다.

[입출력 예]

n        return
118372    873211

코드

import java.util.Arrays;
import java.util.Collections;

public static long solution(long n) {
        String[] str = String.valueOf(n).split("");
        Long[] number = new Long[str.length];

        for (int i = 0; i < str.length; i++) {
            number[i] = Long.parseLong(str[i]);
        }

        Arrays.sort(number, Collections.reverseOrder());

        String answer = "";
        for (int i = 0; i < number.length; i++) {
            answer = answer + number[i];
        }

        return Long.parseLong(answer);
    }

좀 이상한 거 같기도 하고... 더 쉬운 방법이 있을 거 같은 느낌이 좀 들었지만..
통과가 됐으니! 성공

반응형

'프로그래머스 > 프로그래머스 - JAVA' 카테고리의 다른 글

[JAVA] 문자열 다루기 기본  (0) 2023.02.21
[JAVA] 소수 찾기  (0) 2023.02.21
[JAVA] 정수 제곱근 판별  (0) 2023.02.21
[JAVA] 콜라츠 추측  (0) 2023.02.21
[JAVA] 하샤드 수  (0) 2023.02.21