[Baekjoon/๐ฅSilverโ ข] 2579: ๊ณ๋จ ์ค๋ฅด๊ธฐ
Intro
-
๋ฌธ์ ๋ฅผ ์์ฝํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
- n๊ฐ์ ๊ณ๋จ์ด ์์ผ๋ฉฐ, ๊ฐ ๊ณ๋จ๋ง๋ค ์ ์๊ฐ ์กด์ฌํ๋ค.
-
๊ณ๋จ์ ์ฌ๋ผ ์ป์ ์ ์๋ ์ต๋์ ์ ์๋ฅผ ์ถ๋ ฅํ์!
๐ ๋จ, ๊ท์น์ ๋ค์๊ณผ ๊ฐ๋ค.
- ๊ณ๋จ์ ํ ๋ฒ์ ํ๋, ํน์ ๋ ๊ฐ์ฉ ์ค๋ฅผ ์ ์๋ค.
- ์ฐ์ํด์ ์ธ ๊ณ๋จ์ ๋ฐ์ ์ ์์ผ๋ฉฐ, ์์์ ์ ์ ์ธํ๋ค.
- ๋ง์ง๋ง ๋์ฐฉ ๊ณ๋จ์ ๋ฐ๋์ ๋ฐ๋๋ค.
์ ๊ทผ ๋ฐฉ๋ฒ๐โโ๏ธ
-
์ฐ์ ์ธ ๊ณ๋จ์ ๋ฐ์ ์ ์์ผ๋ฏ๋ก i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ด ๋ ๊ฐ์ง ๊ฒฝ์ฐ๊ฐ ์กด์ฌํ๋ค.
-
i-2๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ง ์๊ณ , i-1๊ณผ i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ๋ ๊ฒฝ์ฐ
- i-1๊ณผ i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ๊ธฐ ์ํด์๋ i-3๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์์ผ ํ๋ค.
- i-3 ์ด์ ๊ณ๋จ์ ๋ฐ์๋์ง๋ ์ค์ํ์ง ์๋ค.
-
i-1๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ง ์๊ณ , i-2์ i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ๋ ๊ฒฝ์ฐ
- i-2๊ฐ ์ด์ ๊ณ๋จ์ ๋ฐ์๋์ง๋ ์ค์ํ์ง ์๊ฒ ๋๋ค.
-
์ด๋ฅผ ํตํด์ ์ฐ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ์ฌ์ค์ ์ ์ ์๋ค.
๐ฉ i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ ์ป์ ์ ์๋ ์ต๋์ ์ ์๋ฅผ ๊ตฌํ๊ธฐ ์ํด์๋ ๋ค์์ ๋ ๊ฐ์ด ํ์ํ๋ค.
-
i-2๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์์ ๋ ์ป์ ์ ์๋ ์ต๋ ์ ์
-
i-3๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์์ ๋ ์ป์ ์ ์๋ ์ต๋ ์ ์
๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ํด๋น ๋ฌธ์ ๋ฅผ ๋์ ๊ณํ๋ฒ์ ์ ์ฉํด ํด๊ฒฐํ ์ ์๋ค.
Algoritm๐ฉโ๐ป
์ ๋ฐฉ์์ ์ ์ฉํด ์๊ณ ๋ฆฌ์ฆ์ ์์ฑํด๋ณด์!
#21.10.12
import sys
N = int(input())
# ๋ ๋ฒ์งธ ๊ณ๋จ๋ถํฐ ๊ธฐ๋ณธ์ฐ์ฐ์ ์ ์ฉํ ์ ์๋๋ก 2๊ฐ์ 0์ ๋ฆฌ์คํธ์ ๋ฃ์ด๋๋ค.
score = [0, 0]
dp = [0, 0]
for i in range(N):
score.append(int(sys.stdin.readline().rstrip()))
dp.append(score[2])
# ์ฒซ ๋ฒ์งธ ๊ณ๋จ์ for๋ฌธ์ด ์ํ๋์ง ์๊ณ ํด๋น ๊ณ๋จ์ ์ ์๊ฐ ๋ฐ๋ก ์ถ๋ ฅ๋๊ฒ ๋๋ค.
# ๊ทธ ์ดํ ๊ณ๋จ๋ถํฐ๋ ๋ค์์ ๋ ๊ฐ์ ๋น๊ตํด ์ต๋ ๊ฐ์ ๋ฃ๊ฒ ๋๋ค.
# i-2์ i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ ๊ฒฝ์ฐ
# i-3๊ณผ i-1, i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ ๊ฒฝ์ฐ
for i in range(3, N+2):
temp1 = score[i] + dp[i-2]
temp2 = score[i] + score[i-1] + dp[i-3]
dp.append(max(temp1, temp2))
print(dp[-1])
-
๐โโ๏ธ ์ฌ๊ธฐ์ ์ฃผ์ํ ์ !!
- i-3๊ณผ i-1, i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ ๊ฒฝ์ฐ
-
i-1๋ฅผ ๋ฐ๊ณ ์ด์ ๊ณ๋จ์ธ i-2๋ฅผ ๋ฐ์ง ์์์ผ ํ๋ค.
= dp[i-3] + score[i-1] + score[i]
- i-3 ์ด์ ๊ณ๋จ์ ๊ฒฝ์ฐ, ๋ฐ์๋์ง ์ฌ๋ถ๊ฐ ์๊ด์์ผ๋ฏ๋ก dp[i-3]์ ํตํด i-3 ๊ณ๋จ์ ๋ฐ์์ ๋ ์ป์ ์ ์๋ ์ต๋ ์ ์๋ฅผ ๊ตฌํ๋ค.
- ์ถ๊ฐ๋ก score[i-1], score[i] ๊ฐ์ ๋ํด i-3์ ๋ฐ์์ ๋์ ์ต๋ ์ ์๋ฅผ ์ป์ ์ ์๋ ๋ฐฉ๋ฒ์์ i-1๊ณผ i๋ฅผ ๋ฐ๋ ๊ฒฝ์ฐ์ ์ ์๋ฅผ ๊ณ์ฐํ๋ค.
-
- i-3๊ณผ i-1, i๋ฒ์งธ ๊ณ๋จ์ ๋ฐ์ ๊ฒฝ์ฐ
๐ฉ ๊ทธ๋ผ ์ด๋ง ๋ง๋ฌด๋ฆฌํ๋๋ก ํ๋ค!!
์ด๋ง!
๋! ~(หโพห~)
๐์ฐธ๊ณ
- https://sungmin-joo.tistory.com/18
- https://pacific-ocean.tistory.com/149
๋๊ธ๋จ๊ธฐ๊ธฐ