๐กsolutions )
๐ฌ ๋์ ํ๋ก๊ทธ๋๋ฐ ๋ฌธ์ ์ด๋ค.
๐ฌ 1ํ(i+1์ด๋)๋ถํฐ ์์ํด์ ๊ฐ ํ์ด ์์๋ง๋ค, ๊ทธ ์ด์ ํ์์ ์์ ๊ณผ ์ด์ด ๊ฐ์ง ์์ ์ด๋ค ์ค ์ต๋๊ฐ์ ๋ํด์ค๋ค.
๐ฌ ๋ง์ง๋ง ํ์ ์ต๋๊ฐ์ด ๊ฒฐ๊ณผ๊ฐ์ด ๋๋ค.
๐ซcode )
def solution(land):
for i in range(len(land)-1):
land[i+1][0] = max(land[i][1:4]) + land[i+1][0]
land[i+1][1] = max(land[i][0], max(land[i][2:4])) + land[i+1][1]
land[i+1][2] = max(max(land[i][0:2]), land[i][3]) + land[i+1][2]
land[i+1][3] = max(land[i][0:3]) + land[i+1][3]
return max(land[-1])
๐ description )
๋ฌธ์ ์ถ์ฒ : programmers.co.kr/learn/courses/30/lessons/12913?language=python3
๋ฌธ์ ์ค๋ช ๋
๋ฐ๋จน๊ธฐ ๊ฒ์์ ํ๋ ค๊ณ ํฉ๋๋ค. ๋
๋ฐ๋จน๊ธฐ ๊ฒ์์ ๋
(land)์ ์ด Nํ 4์ด๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๋ชจ๋ ์นธ์๋ ์ ์๊ฐ ์ฐ์ฌ ์์ต๋๋ค. 1ํ๋ถํฐ ๋
์ ๋ฐ์ผ๋ฉฐ ํ ํ์ฉ ๋ด๋ ค์ฌ ๋, ๊ฐ ํ์ 4์นธ ์ค ํ ์นธ๋ง ๋ฐ์ผ๋ฉด์ ๋ด๋ ค์์ผ ํฉ๋๋ค. ๋จ, ๋
๋ฐ๋จน๊ธฐ ๊ฒ์์๋ ํ ํ์ฉ ๋ด๋ ค์ฌ ๋, ๊ฐ์ ์ด์ ์ฐ์ํด์ ๋ฐ์ ์ ์๋ ํน์ ๊ท์น์ด ์์ต๋๋ค. ์๋ฅผ ๋ค๋ฉด, | 1 | 2 | 3 | 5 | | 5 | 6 | 7 | 8 | | 4 | 3 | 2 | 1 | ๋ก ๋ ์ด ์ฃผ์ด์ก๋ค๋ฉด, 1ํ์์ ๋ค๋ฒ์งธ ์นธ (5)๋ฅผ ๋ฐ์์ผ๋ฉด, 2ํ์ ๋ค๋ฒ์งธ ์นธ (8)์ ๋ฐ์ ์ ์์ต๋๋ค. ๋ง์ง๋ง ํ๊น์ง ๋ชจ๋ ๋ด๋ ค์์ ๋, ์ป์ ์ ์๋ ์ ์์ ์ต๋๊ฐ์ returnํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์. ์ ์์ ๊ฒฝ์ฐ, 1ํ์ ๋ค๋ฒ์งธ ์นธ (5), 2ํ์ ์ธ๋ฒ์งธ ์นธ (7), 3ํ์ ์ฒซ๋ฒ์งธ ์นธ (4) ๋ ์ ๋ฐ์ 16์ ์ด ์ต๊ณ ์ ์ด ๋๋ฏ๋ก 16์ return ํ๋ฉด ๋ฉ๋๋ค.
์ ์ถ๋ ฅ ์ |