Contents

์นดํŽซ (with.Java)

   Aug 9, 2024     2 min read

์นดํŽซ (with.Java) ๋ฌธ์ œ์— ๋Œ€ํ•˜์—ฌ ์•Œ์•„๋ณธ ๊ธ€์ž…๋‹ˆ๋‹ค.

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉฐ, ํ’€์—ˆ๋˜ ๋ฌธ์ œ์— ๋Œ€ํ•œ ํšŒ๊ณ ๋ฅผ ํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ์— ๋Œ€ํ•ด ๋จผ์ € ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ

Leo๋Š” ์นดํŽซ์„ ์‚ฌ๋Ÿฌ ๊ฐ”๋‹ค๊ฐ€ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ค‘์•™์—๋Š” ๋…ธ๋ž€์ƒ‰์œผ๋กœ ์น ํ•ด์ ธ ์žˆ๊ณ  ํ…Œ๋‘๋ฆฌ 1์ค„์€ ๊ฐˆ์ƒ‰์œผ๋กœ ์น ํ•ด์ ธ ์žˆ๋Š” ๊ฒฉ์ž ๋ชจ์–‘ ์นดํŽซ์„ ๋ดค์Šต๋‹ˆ๋‹ค.

Leo๋Š” ์ง‘์œผ๋กœ ๋Œ์•„์™€์„œ ์•„๊นŒ ๋ณธ ์นดํŽซ์˜ ๋…ธ๋ž€์ƒ‰๊ณผ ๊ฐˆ์ƒ‰์œผ๋กœ ์ƒ‰์น ๋œ ๊ฒฉ์ž์˜ ๊ฐœ์ˆ˜๋Š” ๊ธฐ์–ตํ–ˆ์ง€๋งŒ, ์ „์ฒด ์นดํŽซ์˜ ํฌ๊ธฐ๋Š” ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

Leo๊ฐ€ ๋ณธ ์นดํŽซ์—์„œ ๊ฐˆ์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ brown, ๋…ธ๋ž€์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ yellow๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ์นดํŽซ์˜ ๊ฐ€๋กœ, ์„ธ๋กœ ํฌ๊ธฐ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์—ด์— ๋‹ด์•„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.

์ œํ•œ์‚ฌํ•ญ

  • ๊ฐˆ์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ brown์€ 8 ์ด์ƒ 5,000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • ๋…ธ๋ž€์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ yellow๋Š” 1 ์ด์ƒ 2,000,000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • ์นดํŽซ์˜ ๊ฐ€๋กœ ๊ธธ์ด๋Š” ์„ธ๋กœ ๊ธธ์ด์™€ ๊ฐ™๊ฑฐ๋‚˜, ์„ธ๋กœ ๊ธธ์ด๋ณด๋‹ค ๊น๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ์‹œ

brownyellowreturn
102[4, 3]
81[3, 3]
2424[8, 6]

๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‚˜์˜ ํ’€์ด

class Solution {
    public int[] solution(int brown, int yellow) {
        int[] answer = new int[2];
        int length = brown / 2 + 1;
        int x = length;
        for(int y = 1; y < length; y++){
            if(x * y - brown == yellow){
                answer[0] = x;
                answer[1] = y;
                break;
            }
            x--;
        }
        return answer;
    }
}

ํ’€์ด ์„ค๋ช…

  • solution ๋ฉ”์„œ๋“œ๋Š” ์ •์ˆ˜ brown๊ณผ yellow๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์Šต๋‹ˆ๋‹ค.
  • answer ๋ฐฐ์—ด์€ ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฐ€๋กœ์™€ ์„ธ๋กœ๋ฅผ ์ €์žฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • length ๋ณ€์ˆ˜์—๋Š” ๊ฐˆ์ƒ‰ ํƒ€์ผ์˜ ๊ฐœ์ˆ˜๋ฅผ ํ†ตํ•ด ์ถ”์ •ํ•œ ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฐ€๋กœ ๊ธธ์ด๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • x์—๋Š” ๊ฐ€๋กœ ๊ธธ์ด๋ฅผ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.
  • for ๋ฃจํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ธ๋กœ ๊ธธ์ด๋ฅผ 1๋ถ€ํ„ฐ length๊นŒ์ง€ ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ๊ฐ์˜ x์™€ y๋ฅผ ๊ณฑํ•˜์—ฌ ์ „์ฒด ํƒ€์ผ์˜ ์ˆ˜์—์„œ ๊ฐˆ์ƒ‰ ํƒ€์ผ์˜ ์ˆ˜๋ฅผ ๋นผ๊ณ  ๋‚œ ๊ฐ’์ด ๋…ธ๋ž€์ƒ‰ ํƒ€์ผ์˜ ์ˆ˜์™€ ์ผ์น˜ํ•˜๋ฉด, ํ•ด๋‹น x์™€ y๊ฐ’์„ answer ๋ฐฐ์—ด์— ์ €์žฅํ•˜๊ณ  ๋ฃจํ”„๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
  • ๋งŒ์•ฝ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” x์™€ y๊ฐ€ ์—†๋‹ค๋ฉด, x๋ฅผ ๊ฐ์†Œ์‹œํ‚ค๊ณ  ๋‹ค์‹œ ์กฐ๊ฑด์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ answer ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด ์ฝ”๋“œ๋Š” ๊ฐˆ์ƒ‰ ํƒ€์ผ๊ณผ ๋…ธ๋ž€์ƒ‰ ํƒ€์ผ์˜ ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ์ง์‚ฌ๊ฐํ˜•์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ๊ฐ€๋กœ์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

ํ•ด์„ค์„ ๋ณด์ถฉํ•˜์ž๋ฉด, ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋กœ์ง์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

  • ๋จผ์ €, ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฐ€๋กœ ๊ธธ์ด๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ๊ฐˆ์ƒ‰ ํƒ€์ผ์˜ ๊ฐœ์ˆ˜์ธ brown์„ 2๋กœ ๋‚˜๋ˆˆ ๊ฐ’์— 1์„ ๋”ํ•ฉ๋‹ˆ๋‹ค. (๊ฐˆ์ƒ‰ ํƒ€์ผ์€ ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฐ€๋กœ์™€ ์„ธ๋กœ 2์ค„์„ ๊ฐ๊ฐ ์ฑ„์šฐ๋ฏ€๋กœ, ๊ฐ€๋กœ ๊ธธ์ด๋Š” ๋ฐ˜๋“œ์‹œ ์„ธ๋กœ ๊ธธ์ด๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.)
  • ๊ฐ€๋กœ ๊ธธ์ด x์™€ ์„ธ๋กœ ๊ธธ์ด y๋ฅผ ๊ณฑํ•œ ๊ฐ’์—์„œ ๊ฐˆ์ƒ‰ ํƒ€์ผ์˜ ์ˆ˜๋ฅผ ๋บ€ ๊ฒฐ๊ณผ๊ฐ€ ๋…ธ๋ž€์ƒ‰ ํƒ€์ผ์˜ ์ˆ˜์™€ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ๋งŒ์•ฝ ์ผ์น˜ํ•œ๋‹ค๋ฉด, ํ•ด๋‹น ๊ฐ€๋กœ ๊ธธ์ด x์™€ ์„ธ๋กœ ๊ธธ์ด y๋ฅผ answer ๋ฐฐ์—ด์— ์ €์žฅํ•˜๊ณ  ๋ฐ˜๋ณต๋ฌธ์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
  • ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด, ๊ฐ€๋กœ ๊ธธ์ด x๋ฅผ ํ•˜๋‚˜์”ฉ ๊ฐ์†Œ์‹œํ‚ค๋ฉด์„œ ๋‹ค์‹œ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ๋งˆ์ง€๋ง‰์œผ๋กœ, answer ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

์ด ์ฝ”๋“œ๋Š” ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€๋กœ ๊ธธ์ด x์™€ ์„ธ๋กœ ๊ธธ์ด y๋ฅผ ํƒ์ƒ‰ํ•˜๋ฉด์„œ ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ๋งŒ์กฑ์‹œํ‚ค๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฐพ์•„๋‚ด๊ณ , ์ด๋ฅผ answer ๋ฐฐ์—ด์— ์ €์žฅํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.