프로그래머스 : 정수 내림차순으로 배치하기

Digeut·2023년 8월 25일
0

프로그래머스

목록 보기
96/164

❔문제설명

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

🤔아이디어

문자열 내림차순때와 마찬가지로 내림차순정렬!

❌틀린코드

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

class Solution {
    public long solution(long n) {
        long answer = 0;
        
        String[] arr = Long.toString(n).split("");
        Arrays.sort(arr, Collections.reverseOrder());
        
        for(String a : arr){
            answer += a;
        }
        
        answer = Long.parseLong(answer);
        return answer;
    }
}

🙄오류


answer의 형태가 Long!! 일단 for문 안의 값들은 String으로 받아야한다. 그런다음 Long형태로 다시 변환시켜줘야한다.

💡코드풀이

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

class Solution {
    public long solution(long n) {
        long answer = 0;
        
        String[] arr = Long.toString(n).split("");
        Arrays.sort(arr, Collections.reverseOrder());
        
        String ans = "";
        
        for(String a : arr){
            ans += a;
        }
        
        answer = Long.parseLong(ans);
        return answer;
    }
}
profile
개발자가 될 거야!

0개의 댓글