๐งฎ ์๊ณ ๋ฆฌ์ฆ/-- ํ๋ก๊ทธ๋๋จธ์ค (Programmers) - Python
-
๋ฌธ์ ๋งํฌ https://programmers.co.kr/learn/courses/30/lessons/43162# ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋คํธ์ํฌ ๋คํธ์ํฌ๋ ์ปดํจํฐ ์ํธ ๊ฐ์ ์ ๋ณด๋ฅผ ๊ตํํ ์ ์๋๋ก ์ฐ๊ฒฐ๋ ํํ๋ฅผ ์๋ฏธํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ปดํจํฐ A์ ์ปดํจํฐ B๊ฐ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด์๊ณ , ์ปดํจํฐ B์ ์ปดํจํฐ C๊ฐ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์ programmers.co.kr ํ์ด 1. 0๋ฒ ์ปดํจํฐ๋ถํฐ ์ฐ๊ฒฐ๋ ๋ชจ๋ ์ปดํจํฐ๋ฅผ ๋ฐฉ๋ฌธํ๋ค. (์ฌ ๋ฐฉ๋ฌธ ํ์ง ์๊ธฐ ์ํด g_check์ด๋ผ๋ ๋ฐฐ์ด์ ๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ํ๋ค.) -> ์ฐ๊ฒฐ๋ ๋ชจ๋ ์ปดํจํฐ๋ฅผ ๋ฐฉ๋ฌธํ๊ณ ๋๋ฉด answer += 1์ ํด์ค๋ค. (์ฐ๊ฒฐ ์ปดํจํฐ๋ฅผ ๋ชจ๋ ๋ฐฉ๋ฌธํ๋ฉด ๋คํธ์ํฌ ํ๋ฉ์ด๋ฆฌ ๋ฐ๊ฒฌ!) 2. ๋ฐฉ๋ฌธ์ฒดํฌ๋ DFS๋ฅผ ์ด์ฉํ์ฌ ์ฌ๊ท์ ์ผ๋ก ๊ตฌํํ๋ค. g_check = [] g_c..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ๋คํธ์ํฌ๋ฌธ์ ๋งํฌ https://programmers.co.kr/learn/courses/30/lessons/43162# ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋คํธ์ํฌ ๋คํธ์ํฌ๋ ์ปดํจํฐ ์ํธ ๊ฐ์ ์ ๋ณด๋ฅผ ๊ตํํ ์ ์๋๋ก ์ฐ๊ฒฐ๋ ํํ๋ฅผ ์๋ฏธํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ปดํจํฐ A์ ์ปดํจํฐ B๊ฐ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด์๊ณ , ์ปดํจํฐ B์ ์ปดํจํฐ C๊ฐ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์ programmers.co.kr ํ์ด 1. 0๋ฒ ์ปดํจํฐ๋ถํฐ ์ฐ๊ฒฐ๋ ๋ชจ๋ ์ปดํจํฐ๋ฅผ ๋ฐฉ๋ฌธํ๋ค. (์ฌ ๋ฐฉ๋ฌธ ํ์ง ์๊ธฐ ์ํด g_check์ด๋ผ๋ ๋ฐฐ์ด์ ๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ํ๋ค.) -> ์ฐ๊ฒฐ๋ ๋ชจ๋ ์ปดํจํฐ๋ฅผ ๋ฐฉ๋ฌธํ๊ณ ๋๋ฉด answer += 1์ ํด์ค๋ค. (์ฐ๊ฒฐ ์ปดํจํฐ๋ฅผ ๋ชจ๋ ๋ฐฉ๋ฌธํ๋ฉด ๋คํธ์ํฌ ํ๋ฉ์ด๋ฆฌ ๋ฐ๊ฒฌ!) 2. ๋ฐฉ๋ฌธ์ฒดํฌ๋ DFS๋ฅผ ์ด์ฉํ์ฌ ์ฌ๊ท์ ์ผ๋ก ๊ตฌํํ๋ค. g_check = [] g_c..
2022.03.11 -
https://programmers.co.kr/learn/courses/30/lessons/43165 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ํ๊ฒ ๋๋ฒ n๊ฐ์ ์์ด ์๋ ์ ์๋ค์ด ์์ต๋๋ค. ์ด ์ ์๋ค์ ์์๋ฅผ ๋ฐ๊พธ์ง ์๊ณ ์ ์ ํ ๋ํ๊ฑฐ๋ ๋นผ์ ํ๊ฒ ๋๋ฒ๋ฅผ ๋ง๋ค๋ ค๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด [1, 1, 1, 1, 1]๋ก ์ซ์ 3์ ๋ง๋ค๋ ค๋ฉด ๋ค์ ๋ค์ฏ ๋ฐฉ๋ฒ์ ์ธ ์ programmers.co.kr ๋ฌธ์ ์ ํ : DFS / BFS ํ์ด dfs(idx, ๋์ ๊ฐ): if idx == numbers์ ๊ฐ์ # ์ฌ๊ท ์ข ๋ฃ์กฐ๊ฑด : ๋ชจ๋ ์์๋ฅผ ๋ํ๊ฑฐ๋ ๋บ๋ค๋ฉด ์ข ๋ฃ if ๋์ ๊ฐ == target: # ๋ชจ๋ ์์๋ฅผ ๋ํ๊ฑฐ๋ ๋บ๋๋ฐ, ๋์ ๊ฐ์ด target๊ณผ ์ผ์นํ๋ฉด answer += 1 answer += 1 return # ์์ง ์ข ๋ฃ์ ์ด๋ผ๋ฉด dfs(..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ํ๊ฒ ๋๋ฒhttps://programmers.co.kr/learn/courses/30/lessons/43165 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ํ๊ฒ ๋๋ฒ n๊ฐ์ ์์ด ์๋ ์ ์๋ค์ด ์์ต๋๋ค. ์ด ์ ์๋ค์ ์์๋ฅผ ๋ฐ๊พธ์ง ์๊ณ ์ ์ ํ ๋ํ๊ฑฐ๋ ๋นผ์ ํ๊ฒ ๋๋ฒ๋ฅผ ๋ง๋ค๋ ค๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด [1, 1, 1, 1, 1]๋ก ์ซ์ 3์ ๋ง๋ค๋ ค๋ฉด ๋ค์ ๋ค์ฏ ๋ฐฉ๋ฒ์ ์ธ ์ programmers.co.kr ๋ฌธ์ ์ ํ : DFS / BFS ํ์ด dfs(idx, ๋์ ๊ฐ): if idx == numbers์ ๊ฐ์ # ์ฌ๊ท ์ข ๋ฃ์กฐ๊ฑด : ๋ชจ๋ ์์๋ฅผ ๋ํ๊ฑฐ๋ ๋บ๋ค๋ฉด ์ข ๋ฃ if ๋์ ๊ฐ == target: # ๋ชจ๋ ์์๋ฅผ ๋ํ๊ฑฐ๋ ๋บ๋๋ฐ, ๋์ ๊ฐ์ด target๊ณผ ์ผ์นํ๋ฉด answer += 1 answer += 1 return # ์์ง ์ข ๋ฃ์ ์ด๋ผ๋ฉด dfs(..
2022.03.11 -
https://programmers.co.kr/learn/courses/30/lessons/92334 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ ๋ฌธ์ ์ค๋ช ์ ์ ์ฌ์ ๋ฌด์ง๋ ๊ฒ์ํ ๋ถ๋ ์ด์ฉ์๋ฅผ ์ ๊ณ ํ๊ณ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฉ์ผ๋ก ๋ฐ์กํ๋ ์์คํ ์ ๊ฐ๋ฐํ๋ ค ํฉ๋๋ค. ๋ฌด์ง๊ฐ ๊ฐ๋ฐํ๋ ค๋ ์์คํ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๊ฐ ์ ์ ๋ ํ ๋ฒ์ ํ ๋ช ์ programmers.co.kr ํ์ด ๋ณ๋ค๋ฅธ ํ์ด ๋ฐฉ๋ฒ ์์ด ๋ฌธ์ ๋ฅผ ๊ทธ๋๋ก ๊ตฌํํ๋ฉด ๋๋ค. # ํ๋ฒ์ ํ ์ ์ ์ ๊ณ ๊ฐ๋ฅ, ํ ์ ์ ๋ฅผ ์ฌ๋ฌ๋ฒ ์ ๊ณ ์ 1๋ฒ์ผ๋ก ๊ฐ์ฃผ # K๋ฒ ์ด์ ์ ๊ณ ๋๋ฉด ์ ์ง # ์ ๊ณ ํ ์ฌ๋์๊ฒ ์ฒ๋ฆฌ๊ฒฐ๊ณผ๋ฅผ ๋ฉ์ผ๋ก ๋ฐ๋๋ค. 3๊ฐ์ ๋ฉ์๋๋ฅผ ๊ตฌํํด์ ํ์๋ค. ์ฝ๋ฉ ํ ์คํธ๋ฅผ ๋ณผ๋ ํจ์๋ฅผ ๋๋๋๊ฒ ์ข์์ง ์๋์ง ๋ชจ๋ฅด๊ฒ ๋ค.... # 0. (์ฌ์ ์ฒ๋ฆฌ) ๊ฐ์ ์ ๊ณ ๋ฅผ ํ ๊ฒฝ์ฐ๋ ์์ผ๋ฏ..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐhttps://programmers.co.kr/learn/courses/30/lessons/92334 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ ๋ฌธ์ ์ค๋ช ์ ์ ์ฌ์ ๋ฌด์ง๋ ๊ฒ์ํ ๋ถ๋ ์ด์ฉ์๋ฅผ ์ ๊ณ ํ๊ณ ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฉ์ผ๋ก ๋ฐ์กํ๋ ์์คํ ์ ๊ฐ๋ฐํ๋ ค ํฉ๋๋ค. ๋ฌด์ง๊ฐ ๊ฐ๋ฐํ๋ ค๋ ์์คํ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๊ฐ ์ ์ ๋ ํ ๋ฒ์ ํ ๋ช ์ programmers.co.kr ํ์ด ๋ณ๋ค๋ฅธ ํ์ด ๋ฐฉ๋ฒ ์์ด ๋ฌธ์ ๋ฅผ ๊ทธ๋๋ก ๊ตฌํํ๋ฉด ๋๋ค. # ํ๋ฒ์ ํ ์ ์ ์ ๊ณ ๊ฐ๋ฅ, ํ ์ ์ ๋ฅผ ์ฌ๋ฌ๋ฒ ์ ๊ณ ์ 1๋ฒ์ผ๋ก ๊ฐ์ฃผ # K๋ฒ ์ด์ ์ ๊ณ ๋๋ฉด ์ ์ง # ์ ๊ณ ํ ์ฌ๋์๊ฒ ์ฒ๋ฆฌ๊ฒฐ๊ณผ๋ฅผ ๋ฉ์ผ๋ก ๋ฐ๋๋ค. 3๊ฐ์ ๋ฉ์๋๋ฅผ ๊ตฌํํด์ ํ์๋ค. ์ฝ๋ฉ ํ ์คํธ๋ฅผ ๋ณผ๋ ํจ์๋ฅผ ๋๋๋๊ฒ ์ข์์ง ์๋์ง ๋ชจ๋ฅด๊ฒ ๋ค.... # 0. (์ฌ์ ์ฒ๋ฆฌ) ๊ฐ์ ์ ๊ณ ๋ฅผ ํ ๊ฒฝ์ฐ๋ ์์ผ๋ฏ..
2022.03.09 -
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ํ๋ฆฐํฐ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์์ฅ programmers.co.kr * ํ์ด ๋ฌธ์ ์ ์ฐ์ฌ์๋ ๊ทธ๋๋ก ๊ตฌํํ๋ค. ๋ค๋ง ์ฐ์ ์์์ ๋ฐ๋ผ์ ์๋ฆฌ๋ฅผ ์ด๋ํด๋ฒ๋ฆฌ๋ฉด ์ฒ์ ์ธ์๋ชฉ๋ก์ ์๋ฆฌ๊ฐ์ ๋ชจ๋ฅด๊ฒ ๋๋ค. ๊ทธ๋์ priorities = [2, 1, 3, 2] ๋ฅผ ์ธ๋ฑ์ค ๊ฐ์ ์ถ๊ฐํ 2์ค ๋ฆฌ์คํธ๋ก ๋ฐ๊พธ์ด์ฃผ์๋ค. priorities = [ [2, 0] ,[1, 1] , [3,2] , [2. 3] ] ์๊ฐ ์ด๊ณผ๊ฐ ์ฐ๋ ค๋์๋๋ฐ, ๋คํํ ๊ทธ๋ฅ ํต๊ณผ๋์๋ค. * Code - Python def search_list(priorities, now) : for i in priorities : if i[0] > now[0] : return False return True def solution(prior..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ํ๋ฆฐํฐ[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ํ๋ฆฐํฐ ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์์ฅ programmers.co.kr * ํ์ด ๋ฌธ์ ์ ์ฐ์ฌ์๋ ๊ทธ๋๋ก ๊ตฌํํ๋ค. ๋ค๋ง ์ฐ์ ์์์ ๋ฐ๋ผ์ ์๋ฆฌ๋ฅผ ์ด๋ํด๋ฒ๋ฆฌ๋ฉด ์ฒ์ ์ธ์๋ชฉ๋ก์ ์๋ฆฌ๊ฐ์ ๋ชจ๋ฅด๊ฒ ๋๋ค. ๊ทธ๋์ priorities = [2, 1, 3, 2] ๋ฅผ ์ธ๋ฑ์ค ๊ฐ์ ์ถ๊ฐํ 2์ค ๋ฆฌ์คํธ๋ก ๋ฐ๊พธ์ด์ฃผ์๋ค. priorities = [ [2, 0] ,[1, 1] , [3,2] , [2. 3] ] ์๊ฐ ์ด๊ณผ๊ฐ ์ฐ๋ ค๋์๋๋ฐ, ๋คํํ ๊ทธ๋ฅ ํต๊ณผ๋์๋ค. * Code - Python def search_list(priorities, now) : for i in priorities : if i[0] > now[0] : return False return True def solution(prior..
2021.06.23 -
๋ฌธ์ ๋ถ๋ฅ : ์์ ํ์ Lv.2 ์๊ฐ ์ข ์ด์ ๋ช๊ฐ ๊ทธ๋ ค๋ณด๋ฉด์ ์ ํ์์ ์ธ์๋ณด์๋ค. yellow = (width -2) * (height - 2) brown = (width * height) - yellow ์ด๊ฑธ ํตํด์ ๋ฑ ๋จ์ด์ง๋ ์ด๋ค ์์ ๋์ถํด ๋ด์ง๋ ๋ชปํ๋ค. ๊ทธ๋์ width์ height์ ๊ฐ์ ๊ณ์ ๋ฐ๊พธ์ด ๋์ ํด๋ณด๋ฉด์ ์ ์์ ๋ถํฉํ๋์ง ํ์ธํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฝ๋๋ฅผ ์งฐ๋ค. ์ด๋ ๋ฒ์๊ฐ ์ค์ํ๋ค๊ณ ์๊ฐํ๋๋ฐ, ๋ฌธ์ ์์ ๋ณด๋ฉด yellow์ ์ต๋ ๋ฒ์๋ 2,000,000์ด๊ณ , brown์ 5,000์ด๋ค. ๊ฐ์ฅ width๊ฐ ๊ธธ์ด์ง๋๋ height์ด 3์นธ์ด๋ฉด์ ๋์์ brown์ ์ต๋๊ฐ์ผ๋์ผ ๊ฒ์ด๋ค. ๋๋ต์ ์ผ๋ก ๊ณ์ฐํด๋ณด์๋ฉด, brown์ ๋งจ ์, ๋งจ ์๋ ๋์ค๋ก ์ด๋ฃจ์ด์ ธ์๋ค. ๊ทธ๋ฌ๋ฏ๋ก ๋๋๊ธฐ 2๋ฅผ ํด์ฃผ๋ฉด ์ต..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ์นดํซ๋ฌธ์ ๋ถ๋ฅ : ์์ ํ์ Lv.2 ์๊ฐ ์ข ์ด์ ๋ช๊ฐ ๊ทธ๋ ค๋ณด๋ฉด์ ์ ํ์์ ์ธ์๋ณด์๋ค. yellow = (width -2) * (height - 2) brown = (width * height) - yellow ์ด๊ฑธ ํตํด์ ๋ฑ ๋จ์ด์ง๋ ์ด๋ค ์์ ๋์ถํด ๋ด์ง๋ ๋ชปํ๋ค. ๊ทธ๋์ width์ height์ ๊ฐ์ ๊ณ์ ๋ฐ๊พธ์ด ๋์ ํด๋ณด๋ฉด์ ์ ์์ ๋ถํฉํ๋์ง ํ์ธํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฝ๋๋ฅผ ์งฐ๋ค. ์ด๋ ๋ฒ์๊ฐ ์ค์ํ๋ค๊ณ ์๊ฐํ๋๋ฐ, ๋ฌธ์ ์์ ๋ณด๋ฉด yellow์ ์ต๋ ๋ฒ์๋ 2,000,000์ด๊ณ , brown์ 5,000์ด๋ค. ๊ฐ์ฅ width๊ฐ ๊ธธ์ด์ง๋๋ height์ด 3์นธ์ด๋ฉด์ ๋์์ brown์ ์ต๋๊ฐ์ผ๋์ผ ๊ฒ์ด๋ค. ๋๋ต์ ์ผ๋ก ๊ณ์ฐํด๋ณด์๋ฉด, brown์ ๋งจ ์, ๋งจ ์๋ ๋์ค๋ก ์ด๋ฃจ์ด์ ธ์๋ค. ๊ทธ๋ฌ๋ฏ๋ก ๋๋๊ธฐ 2๋ฅผ ํด์ฃผ๋ฉด ์ต..
2021.06.12 -
๋ฌธ์ ๋ถ๋ฅ : ์์ ํ์ Lv.2 Code(python) from itertools import permutations as pm def prime(n) : if (n < 2) : return False for i in range(2, int(n**0.5) + 1) : if (n % i ==0) : return False return True def check(numbers) : numbers = list(numbers) cnt = 0 for i in numbers : if prime(i) : cnt += 1 return cnt def get_permutations(numbers): max_len = len(numbers) numbers = list(numbers) int_nb = list(map(int,..
[ํ๋ก๊ทธ๋๋จธ์ค] (Python) - ์์ ์ฐพ๊ธฐ๋ฌธ์ ๋ถ๋ฅ : ์์ ํ์ Lv.2 Code(python) from itertools import permutations as pm def prime(n) : if (n < 2) : return False for i in range(2, int(n**0.5) + 1) : if (n % i ==0) : return False return True def check(numbers) : numbers = list(numbers) cnt = 0 for i in numbers : if prime(i) : cnt += 1 return cnt def get_permutations(numbers): max_len = len(numbers) numbers = list(numbers) int_nb = list(map(int,..
2021.06.12