Hamutaro - Hamtaro 4

Algorithm/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JAVA] ์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ

carsumin 2021. 12. 14. 17:04

https://programmers.co.kr/learn/courses/30/lessons/12933

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ

ํ•จ์ˆ˜ solution์€ ์ •์ˆ˜ n์„ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค. n์˜ ๊ฐ ์ž๋ฆฟ์ˆ˜๋ฅผ ํฐ๊ฒƒ๋ถ€ํ„ฐ ์ž‘์€ ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ์ƒˆ๋กœ์šด ์ •์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ด์ฃผ์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด n์ด 118372๋ฉด 873211์„ ๋ฆฌํ„ดํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ œํ•œ ์กฐ๊ฑด n์€ 1์ด

programmers.co.kr

 

 

์ƒ๊ฐ๋ณด๋‹ค ์–ด๋ ค์› ๋˜ ๋‚ด๋ฆผ์ฐจ์ˆœ ๋ฐฐ์น˜

 

1. ์ •์ˆ˜ n์„ String์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ charํ˜• ๋ฐฐ์—ด์— ๋‹ด์Œ

2. sort ๋ฉ”์„œ๋“œ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ(๊ธฐ๋ณธ๊ฐ’)

3. ์—ญ์ˆœ์œผ๋กœ ์ถœ๋ ฅ

4. ๋‹ค์‹œ longํ˜• ๋ณ€์ˆ˜๋กœ ๋ณ€ํ™˜

 

import java.util.Arrays;

class Solution {
    public long solution(long n) {
        long answer = 0;
        
        String str = "";
        str += n; //์ •์ˆ˜ n์„ String์œผ๋กœ ๋ณ€ํ™˜
        
        char[] arr = str.toCharArray(); //๋ฐฐ์—ด์— ๋‹ด๋Š”๋‹ค
        Arrays.sort(arr); //sort ๋ฉ”์„œ๋“œ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
        str = ""; //์ดˆ๊ธฐํ™”
        
        for(int i=arr.length-1; i>=0; i--){ //์—ญ์ˆœ(๋‚ด๋ฆผ์ฐจ์ˆœ)์œผ๋กœ ๋ฐฐ์น˜
            str += arr[i];
        }
        answer = Long.parseLong(str); //longํ˜• ๋ณ€์ˆ˜๋กœ ๋ณ€ํ™˜
        return answer;
    }
}

 

 

 

 

+ 2024.08.21 ๋‹ค์‹œ ํ’€์–ด๋ณธ ๋‚ด๋ฆผ์ฐจ์ˆœ ๋ฐฐ์น˜!

import java.util.*;

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

 

1. String ๋ฐฐ์—ด์— ๋‹ด์•„์ค€๋‹ค.

2. Arrays.sort ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ String ๋ฐฐ์—ด์„ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ

3. ์ •๋ ฌํ•œ String ๋ฐฐ์—ด์„ ๋‹ค์‹œ String ๋ณ€์ˆ˜์— ๋‹ด์•„์ค€๋‹ค.

4. answer์„ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด Longํ˜•์œผ๋กœ ๋‹ค์‹œ ๋ฐ”๊ฟˆ

 

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ๊ฑด ๋ฐฐ์—ด์— ๋‹ด์•„์„œ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฆฌ๋ฉฐ ์š”์†Œ๋ฅผ ๋น„๊ตํ•˜๋ฉฐ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์•„๋‹Œ,

Java์˜ Array.sort()๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•œ๋ฐฉ์— ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ์„ ํ•˜๋Š” ๊ฒƒ.

์ฝ”๋“œ๋ฅผ ๋”์šฑ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ