๊ธฐ๋ก๋ฐฉ

Lv.2 : ๋•…๋”ฐ๋จน๊ธฐ ๋ณธ๋ฌธ

CodingTest/Java

Lv.2 : ๋•…๋”ฐ๋จน๊ธฐ

Soom_1n 2023. 11. 23. 11:11

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

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

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

programmers.co.kr



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ์œ„์—์„œ๋ถ€ํ„ฐ ์•„๋ž˜๋กœ ๋•…๋”ฐ๋จน๊ธฐํ•˜๋ฉฐ ์ ์ˆ˜๋ฅผ ์ตœ๋Œ€ํ•œ ํฌ๊ฒŒ ๋งŒ๋“ ๋‹ค.
  • ์—ฐ์†๋œ ์—ด์˜ ๋•…์„ ๋ฐŸ์„ ์ˆ˜๋Š” ์—†๋‹ค.
  • ์ ์ˆ˜์˜ ์ตœ๋Œ€๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ”ธ ๋ฌธ์ œ ํ’€์ด ๐Ÿ”ธ

  • ์ง์ „ ํ–‰์˜ ๊ฐ’๋“ค ์ค‘ ๊ฐ™์€ ์—ด์ด ์•„๋‹Œ ๊ฐ’๋“ค ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ๋ˆ„์ ํ•ด ๋‚˜๊ฐ„๋‹ค.
  • ๋งˆ์ง๊ฐ€ ํ–‰์˜ ๊ฐ’๋“ค ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

class Solution {
    int solution(int[][] land) {
        int[][] dp = new int[land.length][4];

        for (int i = 0; i < 4; i++) {
            dp[0][i] = land[0][i];
        }

        for (int i = 1; i < land.length; i++) {
            for (int j = 0; j < 4; j++) {
                for (int k = 0; k < 4; k++) {
                    if (j != k) {
                        dp[i][j] = Math.max(dp[i][j], dp[i-1][k]);
                    }
                }
                dp[i][j] += land[i][j];
            }
        }

        int answer = 0;
        for (int i = 0; i < 4; i++) {
            answer = Math.max(answer,dp[land.length-1][i]);
        }

        return answer;
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • ํ˜„์žฌ ์ธ๋ฑ์Šค์˜ ์ตœ๋Œ€๊ฐ’์„ dp๋ฐฐ์—ด์— ์ €์žฅํ•ด๊ฐ€๋ฉฐ ๊ณ„์‚ฐํ•œ๋‹ค.
    • ์ง์ „ ํ–‰์˜ ๊ฐ’๋“ค ์ค‘ ํ˜„์žฌ ํ–‰๊ณผ ๋‹ค๋ฅธ ์—ด์˜ ๊ฐ’ ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ์ €์žฅํ•œ๋‹ค.
  • ๊ณ„์‚ฐ์„ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ  dp๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ํ–‰ ๊ฐ’๋“ค ์ค‘ ์ตœ๋Œ€๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 


๐Ÿ”ธ end ๐Ÿ”ธ

  • ๋‹จ์ˆœ ๊ตฌํ˜„์œผ๋กœ ๋ง‰ ํ’€์ด ํ•œ ๋Š๋‚Œ์ธ๋ฐ, ์—ด์˜ ๊ธธ์ด๊ฐ€ 4 ์ •๋„ ๋ฟ์ด๋ผ ํšจ์œจ์„ฑ ๋ฌธ์ œ๋„ ์—†์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋‹ค๋ฅธ ํ’€์ด๋ฅผ ๋ณด๋‹ˆ, ์žฌ๊ท€๋ฉ”์„œ๋“œ๋กœ ๋นผ์„œ ํ•œ ์ธ๋ฑ์Šค๋ฅผ ์ œ์™ธํ•œ ์ตœ๋Œ€๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ’€์ดํ•œ ๋ฐฉ๋ฒ•๋„ ์žˆ์—ˆ๋‹ค.

 
728x90