KDLiam

[Programmers ์ฝ”๋”ฉ ๊ธฐ์ดˆ ํŠธ๋ ˆ์ด๋‹ : Java] ๋” ํฌ๊ฒŒ ํ•ฉ์น˜๊ธฐ ๋ณธ๋ฌธ

Problems(Java)/Programmers

[Programmers ์ฝ”๋”ฉ ๊ธฐ์ดˆ ํŠธ๋ ˆ์ด๋‹ : Java] ๋” ํฌ๊ฒŒ ํ•ฉ์น˜๊ธฐ

KDLiam 2025. 10. 1. 14:33

๐Ÿ”ข ๋‘ ์ˆ˜ ์ด์–ด ๋ถ™์ด๊ธฐ ์ตœ๋Œ€๊ฐ’ (ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 181939๋ฒˆ)

๐Ÿ“Œ ๋ฌธ์ œ ๋งํฌ: ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 181939 - ๋‘ ์ˆ˜ ์ด์–ด ๋ถ™์ด๊ธฐ ์ตœ๋Œ€๊ฐ’


๐Ÿ“– ๋ฌธ์ œ ์„ค๋ช…

์ •์ˆ˜ a์™€ b๋ฅผ ์ด์–ด ๋ถ™์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋‘ ๊ฐ€์ง€ ์ˆ˜ ์ค‘ ๋” ํฐ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.
์˜ˆ: a = 9, b = 34 → "934" vs "349" → ๊ฒฐ๊ณผ๋Š” 934


โœจ ์ฒซ ๋ฒˆ์งธ ํ’€์ด (String ๋ณ€ํ™˜ + if๋ฌธ)

 
class Solution {
    public int solution(int a, int b) {
        int answer = 0;
        
        String strA = Integer.toString(a);
        String strB = Integer.toString(b);
        
        int aB = Integer.parseInt(strA + strB);
        int bA = Integer.parseInt(strB + strA);
        
        if(aB > bA) {
            answer = aB;
        } else {
            answer = bA;
        }
        
        return answer;
    }
}

๐Ÿ’ก ํ’€์ด ์•„์ด๋””์–ด

  • Integer.toString(a)๋กœ ์ •์ˆ˜๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜
  • ๋‘ ๊ฐ€์ง€ ๊ฒฝ์šฐ (a+b, b+a)๋ฅผ ๋งŒ๋“ค์–ด ๋น„๊ต
  • if๋ฌธ์œผ๋กœ ๋” ํฐ ๊ฐ’์„ ์„ ํƒ

์ž‘์„ฑํ•˜๋ฉด์„œ๋„ ์กฐ๊ธˆ ๋ณต์žกํ•˜๊ณ  ๋น„ํšจ์œจ์ ์ด๋ผ๋Š” ๋А๋‚Œ์ด ๋“ค ์ˆ˜ ์žˆ์Œ


โœจ ๋‘ ๋ฒˆ์งธ ํ’€์ด (๊ฐ„๊ฒฐํ™” + ์‚ผํ•ญ ์—ฐ์‚ฐ์ž)

 
class Solution {
    public int solution(int a, int b) {
        int aB = Integer.parseInt("" + a + b);
        int bA = Integer.parseInt("" + b + a);
        
        int answer = aB > bA ? aB : bA;
        
        return answer;
    }
}

๐Ÿ’ก ๊ฐœ์„  ํฌ์ธํŠธ

  • "" + a + b ํ˜•ํƒœ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฌธ์ž์—ด ์—ฐ๊ฒฐ ๊ฐ€๋Šฅ
  • if๋ฌธ ๋Œ€์‹  ์‚ผํ•ญ ์—ฐ์‚ฐ์ž๋กœ ๋” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ฒ˜๋ฆฌ
  • ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ฝ”๋“œ ๊ธธ์ด ๊ฐ์†Œ, ๊ฐ€๋…์„ฑ ์ฆ๊ฐ€

๐Ÿ”Ž ์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž

result = (์กฐ๊ฑด) ? ์กฐ๊ฑด์ด ์ฐธ์ผ ๋•Œ ๊ฐ’ : ์กฐ๊ฑด์ด ๊ฑฐ์ง“์ผ ๋•Œ ๊ฐ’

  • ๊ฐ„๋‹จํ•œ ์กฐ๊ฑด๋ฌธ์„ ํ•œ ์ค„๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Œ
  • ํ•˜์ง€๋งŒ ๊ฐ€๋” ๊นŒ๋จน๊ธฐ ์‰ฌ์›Œ ์—ฐ์Šต ํ•„์š”

๐Ÿ”Ž Integer.parseInt()

๋ฌธ์ž์—ด์„ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” Java ๋ฉ”์„œ๋“œ

  • "123" → 123
  • Integer.parseInt(str) ํ˜•ํƒœ๋กœ ์‚ฌ์šฉ