๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Coding Test/Algorithms

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ฐ€์žฅ ํฐ ์ˆ˜/Java - Lv.2

by The Future Engineer, Lucy 2024. 10. 10.

โ“๋ฌธ์ œ

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

๐Ÿ“Œ์œ ํ˜•

์ •๋ ฌ

โœ๐Ÿปํ’€์ด

์ •์ˆ˜๋ฅผ ๋ฌธ์ž๋กœ ๋ฐ”๊ฟ” ๋ฐฐ์—ด๋กœ ์ €์žฅ.
๊ฐ ๋ฌธ์ž์˜ ํ•ฉ์„ ๋น„๊ตํ•˜์—ฌ ๊ฐ€์žฅ ํฐ ์ˆ˜๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ.
answer์— ์ •๋ ฌ๋œ ๋ฌธ์ž๋ฅผ ๋ชจ๋‘ ๋”ํ•จ.
๋งŒ์•ฝ ๋ฌธ์ž์—ด์˜ ์•ž์ด 0์ด๋ผ๋ฉด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋Š” 0์ด๋ฏ€๋กœ 0์„ ๋ฐ˜ํ™˜. ๊ทธ ์™ธ๋Š” answer๋ฅผ ๋ฐ˜ํ™˜.

๐Ÿ’ป์ฝ”๋“œ

import java.util.*;

class Solution {
    public String solution(int[] numbers) {
        String answer = "";
        
        List<String> snum = new ArrayList<>();
        for(int i : numbers)
            snum.add(String.valueOf(i));
        
        snum.sort((o1, o2) -> ((o2 + o1).compareTo(o1 + o2)));
            
        for(int i = 0; i < numbers.length; i++)
            answer += snum.get(i);
        
        return answer.charAt(0) == '0' ? "0" : answer;
    }
}