๐ Algorithm(70)
-
[Python - ํ๋ก๊ทธ๋๋จธ์ค Level1] ๋คํธ ๊ฒ์
์ฝ๋ฉํ ์คํธ ์ฐ์ต - [1์ฐจ] ๋คํธ ๊ฒ์ programmers.co.kr ๋ฌธ์ ์ค๋ช ์นด์นด์คํก ๊ฒ์๋ณ์ ํ๋ฐ๊ธฐ ์ ๊ท ์๋น์ค๋ก ๋คํธ ๊ฒ์์ ์ถ์ํ๊ธฐ๋ก ํ๋ค. ๋คํธ ๊ฒ์์ ๋คํธํ์ ๋คํธ๋ฅผ ์ธ ์ฐจ๋ก ๋์ ธ ๊ทธ ์ ์์ ํฉ๊ณ๋ก ์ค๋ ฅ์ ๊ฒจ๋ฃจ๋ ๊ฒ์์ผ๋ก, ๋ชจ๋๊ฐ ๊ฐ๋จํ ์ฆ๊ธธ ์ ์๋ค. ๊ฐ ์ ์ฌํ ๋ฌด์ง๋ ์ฝ๋ฉ ์ค๋ ฅ์ ์ธ์ ๋ฐ์ ๊ฒ์์ ํต์ฌ ๋ถ๋ถ์ธ ์ ์ ๊ณ์ฐ ๋ก์ง์ ๋งก๊ฒ ๋์๋ค. ๋คํธ ๊ฒ์์ ์ ์ ๊ณ์ฐ ๋ก์ง์ ์๋์ ๊ฐ๋ค. ๋คํธ ๊ฒ์์ ์ด 3๋ฒ์ ๊ธฐํ๋ก ๊ตฌ์ฑ๋๋ค. ๊ฐ ๊ธฐํ๋ง๋ค ์ป์ ์ ์๋ ์ ์๋ 0์ ์์ 10์ ๊น์ง์ด๋ค. ์ ์์ ํจ๊ป Single(S), Double(D), Triple(T) ์์ญ์ด ์กด์ฌํ๊ณ ๊ฐ ์์ญ ๋น์ฒจ ์ ์ ์์์ 1์ ๊ณฑ, 2์ ๊ณฑ, 3์ ๊ณฑ (์ ์1 , ์ ์2 , ์ ์3 )์ผ๋ก ๊ณ์ฐ๋๋ค. ์ต์ ์ผ๋ก ์คํ์(*) ..
2021.01.04 -
[Python - ํ๋ก๊ทธ๋๋จธ์ค Level2] ๋ฐฐ์ ๋น์ฉ ์ต์ํ
๋ฌธ์ ๋ฅผ ์๋ชป์ดํดํ์ฌ ์ฒ์์๋ ์์ด๊ณผ ์กฐํฉ์ ์ด์ฉํด ๊ณ์ฐํ์๋ค ํ์ง๋ง ๋๋ฌด ๋ณต์กํ ์์ด ๋์ด ์ด๊ฒ ๋ง๋? ํท๊ฐ๋ ค ๋ค๋ฅธ๋ถ๋ค์ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์ฌ ๋ค์ ๋ฌธ์ ๋ฅผ ์ดํดํ๊ณ ์ฝ๋๋ฅผ ์งค ์ ์์๋ค. ๋งค์ฐ ๊ฐ๋จํ๊ฒ for๋ฌธ์ ์ด์ฉํ์ฌ ๋งค๋ฒ for๋ฌธ ์์์ works ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌํ๋ฉฐ ๋งจ ๋ง์ง๋ง (์ฆ ์ต๋๊ฐ์ ๊ฐ๋ item)์ 1์ฉ ๋นผ์ฃผ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ ์ ์์๋ค. for๋ฌธ๊ณผ sort ํ์ฉ ํ์ด ๊ณผ์ def solution(no, works): for _ in range(no): works.sort() if works[-1] == 0: break works[-1] -= 1 return sum([i*i for i in works]) ์ ํ๋๋ ๋ค ๋ง์ ์ ์์์ง๋ง ํจ์จ์ฑ์ ๋ชจ๋ ์๊ฐ ์ด๊ณผ ๋๋ ํ์ด๋ฒ์ด์๋ค. ๊ทธ๋์ ๋ค๋ฅธ ํ..
2021.01.03 -
[Python - ํ๋ก๊ทธ๋๋จธ์ค Level2 ] ์คํฌ ํธ๋ฆฌ
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์คํฌํธ๋ฆฌ programmers.co.kr ๋ฌธ์ ์ค๋ช ์ ํ ์คํฌ์ด๋ ์ด๋ค ์คํฌ์ ๋ฐฐ์ฐ๊ธฐ ์ ์ ๋จผ์ ๋ฐฐ์์ผ ํ๋ ์คํฌ์ ๋ปํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ ํ ์คํฌ ์์๊ฐ ์คํํฌ → ๋ผ์ดํธ๋ ๋ณผํธ → ์ฌ๋์ผ๋, ์ฌ๋๋ฅผ ๋ฐฐ์ฐ๋ ค๋ฉด ๋จผ์ ๋ผ์ดํธ๋ ๋ณผํธ๋ฅผ ๋ฐฐ์์ผ ํ๊ณ , ๋ผ์ดํธ๋ ๋ณผํธ๋ฅผ ๋ฐฐ์ฐ๋ ค๋ฉด ๋จผ์ ์คํํฌ๋ฅผ ๋ฐฐ์์ผ ํฉ๋๋ค. ์ ์์์ ์๋ ๋ค๋ฅธ ์คํฌ(ํ๋ง ๋ฑ)์ ์์์ ์๊ด์์ด ๋ฐฐ์ธ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์คํํฌ → ํ๋ง → ๋ผ์ดํธ๋ ๋ณผํธ → ์ฌ๋์ ๊ฐ์ ์คํฌํธ๋ฆฌ๋ ๊ฐ๋ฅํ์ง๋ง, ์ฌ๋ → ์คํํฌ๋ ๋ผ์ดํธ๋ ๋ณผํธ → ์คํํฌ → ํ๋ง → ์ฌ๋์ ๊ฐ์ ์คํฌํธ๋ฆฌ๋ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์ ํ ์คํฌ ์์ skill๊ณผ ์ ์ ๋ค์ด ๋ง๋ ์คํฌํธ๋ฆฌ1๋ฅผ ๋ด์ ๋ฐฐ์ด skill_trees๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๊ฐ๋ฅํ ์คํฌํธ๋ฆฌ ๊ฐ์๋ฅผ ret..
2021.01.03 -
[Python - ํ๋ก๊ทธ๋๋จธ์ค Level1] ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ ๊ฒ์
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ ๊ฒ์ [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr ๋ฌธ์ ์ค๋ช ๊ฒ์๊ฐ๋ฐ์์ธ ์ฃ ๋ฅด๋๋ ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ ๊ธฐ๊ณ๋ฅผ ๋ชจ๋ฐ์ผ ๊ฒ์์ผ๋ก ๋ง๋ค๋ ค๊ณ ํฉ๋๋ค. ์ฃ ๋ฅด๋๋ ๊ฒ์์ ์ฌ๋ฏธ๋ฅผ ๋์ด๊ธฐ ์ํด ํ๋ฉด ๊ตฌ์ฑ๊ณผ ๊ท์น์ ๋ค์๊ณผ ๊ฐ์ด ๊ฒ์ ๋ก์ง์ ๋ฐ์ํ๋ ค๊ณ ํฉ๋๋ค. ๊ฒ์ ํ๋ฉด์ 1 x 1 ํฌ๊ธฐ์ ์นธ๋ค๋ก ์ด๋ฃจ์ด์ง N x N ํฌ๊ธฐ์ ์ ์ฌ๊ฐ ๊ฒฉ์์ด๋ฉฐ ์์ชฝ์๋ ํฌ๋ ์ธ์ด ์๊ณ ์ค๋ฅธ์ชฝ์๋ ๋ฐ๊ตฌ๋๊ฐ ์์ต๋๋ค. (์ ๊ทธ๋ฆผ์ 5 x 5 ํฌ๊ธฐ์ ์์์ ๋๋ค). ๊ฐ ๊ฒฉ์ ์นธ์๋ ๋ค์ํ ์ธํ์ด ๋ค์ด ์์ผ๋ฉฐ ์ธํ์ด ์๋ ์นธ์ ๋น์นธ์ ๋๋ค. ๋ชจ๋ ์ธํ์ 1 x 1 ํฌ๊ธฐ์ ๊ฒฉ์ ํ ์นธ์ ์ฐจ์งํ..
2021.01.03 -
[Python -ํ๋ก๊ทธ๋๋จธ์ค Level2] ์ฌ๋ฐ๋ฅธ ๊ดํธ
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ฌ๋ฐ๋ฅธ ๊ดํธ ๊ดํธ๊ฐ ๋ฐ๋ฅด๊ฒ ์ง์ง์ด์ก๋ค๋ ๊ฒ์ '(' ๋ฌธ์๋ก ์ด๋ ธ์ผ๋ฉด ๋ฐ๋์ ์ง์ง์ด์ ')' ๋ฌธ์๋ก ๋ซํ์ผ ํ๋ค๋ ๋ป์ ๋๋ค. ์๋ฅผ ๋ค์ด ()() ๋๋ (())() ๋ ์ฌ๋ฐ๋ฅธ ๊ดํธ์ ๋๋ค. )()( ๋๋ (()( ๋ ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ programmers.co.kr ๋ฌธ์ ์ค๋ช ๊ดํธ๊ฐ ๋ฐ๋ฅด๊ฒ ์ง์ง์ด์ก๋ค๋ ๊ฒ์ '(' ๋ฌธ์๋ก ์ด๋ ธ์ผ๋ฉด ๋ฐ๋์ ์ง์ง์ด์ ')' ๋ฌธ์๋ก ๋ซํ์ผ ํ๋ค๋ ๋ป์ ๋๋ค. ์๋ฅผ ๋ค์ด ()() ๋๋ (())() ๋ ์ฌ๋ฐ๋ฅธ ๊ดํธ์ ๋๋ค. )()( ๋๋ (()( ๋ ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ์ ๋๋ค. '(' ๋๋ ')' ๋ก๋ง ์ด๋ฃจ์ด์ง ๋ฌธ์์ด s๊ฐ ์ฃผ์ด์ก์ ๋, ๋ฌธ์์ด s๊ฐ ์ฌ๋ฐ๋ฅธ ๊ดํธ์ด๋ฉด true๋ฅผ return ํ๊ณ , ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ์ด๋ฉด false๋ฅผ return ํ๋ solution ํจ์..
2020.12.31 -
ํ์ด์ฌ์ ํ์ด์ฌ ๋ต๊ฒ
์ค๋์ ํ์ด์ฌ ๊ณต๋ถํ ๋ ๋ง์ด ์ ์ฉํ๋ ํ๋ก๊ทธ๋๋จธ์ค์ 'ํ์ด์ฌ์ ํ์ด์ฌ ๋ต๊ฒ' ๊ฐ์์ ๋ํด ์๊ฐํด๋๋ฆฌ๊ณ ์ ํด์! ํ์ด์ฌ์ ํ์ด์ฌ๋ต๊ฒ ๋ณธ ๊ฐ์๋ ํ์ด์ฌ ๋ฌธ๋ฒ์ ์ด๋ฏธ ์๊ณ ์๋ ๋ถ๋ค์ ๋์์ผ๋ก ๋ง๋ค์ด์ก์ต๋๋ค. ##### ์ด๋ฐ ๋ถ๋ค๊ป ์ถ์ฒํฉ๋๋ค * ํ์ด์ฌ ๋ฌธ๋ฒ์ ์๊ณ ๊ณ์๋ ๋ถ * ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ์กฐ๊ธ ๋ ์ฝ๊ฒ ํ๊ณ ์ถ์ ๋ถ * Python ์ฝ programmers.co.kr ํ์ด์ฌ ์ ๋งํ ๋ฌธ๋ฒ์ ๋ํด ๋ค ์ ์๊ณ ์๋ค๊ณ ์๊ฐํ๋๋ฐ 'ํ์ด์ฌ์ ํ์ด์ฌ๋ต๊ฒ' ๊ฐ์์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด๋ฉด์ ์์ง ๋ง์ด ๋ถ์กฑํ๊ณ , ํ์ด์ฌ์ ์ ๋ง ๋ฌด๊ถ๋ฌด์งํ ์ธ์ด๋ผ๋ ๊ฒ์ ์์์ด์! ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ ๋ ํ์ด์ฌ์ด ์ผ๋ง๋ ์ข์ ์ธ์ด์ธ์ง๋ ๋ค์ํ๋ฒ ๊นจ๋ฌ์์ต๋๋ค ๐ ๊ทธ๋์ ! 'ํ์ด์ฌ์ ํ์ด์ฌ ๋ต๊ฒ' ๊ฐ์์์ ์๋กญ๊ฒ ๋ฐฐ์ด ์ ์ฉํ ํ์ด์ฌ ๋ฌธ๋ฒ/๋ชจ๋์..
2020.12.30