[Swift] 2021 KAKAO BLIND RECRUITMENT ์นด๋ ์ง ๋ง์ถ๊ธฐ
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์นด๋ ์ง ๋ง์ถ๊ธฐ [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr Solution ๋ชจ๋ ์นด๋๋ฅผ ๋ค์ง๋ ์ต์ ์กฐ์ํ์๋ฅผ ์ฐพ์์ผ ํ๋ ๋ฌธ์ ์
๋๋ค. (BFS๋ฅผ ๊ตฌํํ๋ ๋ฒ๊ณผ ์์ด๊ตฌํ๋ ๋ฒ์ ์์์ผ ๊ตฌํํ๊ธฐ ์์ํ์ค๊ฒ๋๋ค.) 1. ์นด๋๋ฅผ ๋ค์ง๋ ์์๋ฅผ ์ ํ๊ธฐ(์์ด ๊ตฌํ๋ ๋ฐฉ๋ฒ ์๊ธฐ) ๋ง์ฝ 1,2,3 ์นด๋๊ฐ ์๋ค๋ฉด 1 - 2 - 3, 1 - 3 - 2, 2 - 1 - 3... ๋ฑ์ผ๋ก ๋ค์ง์ ์ ์์ต๋๋ค. ์์ด์ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ ์ฌ๊ท ํจ์๋ฅผ ์ฌ์ฉํด ํด๋น ํ๋์ฉ ์ซ์๋ฅผ ์ง์๋๊ฐ๋ฉด์ depth์ ์ ์ฅํด์ค๋๋ค. ํ์ง๋ง ์นด๋๋ ๊ฐ ๊ฐ ..
2021. 4. 27.
[Swift] 2021 KAKAO BLIND RECRUITMENT ๊ด๊ณ ์ฝ์
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - ๊ด๊ณ ์ฝ์
์๊ฐ์ ๋ํ๋ด๋ HH, H1, H2์ ๋ฒ์๋ 00~99, ๋ถ์ ๋ํ๋ด๋ MM, M1, M2์ ๋ฒ์๋ 00~59, ์ด๋ฅผ ๋ํ๋ด๋ SS, S1, S2์ ๋ฒ์๋ 00~59๊น์ง ์ฌ์ฉ๋ฉ๋๋ค. ์๋ชป๋ ์๊ฐ์ ์
๋ ฅ์ผ๋ก ์ฃผ์ด์ง์ง ์์ต๋๋ค. (์: 04:60:24, 11 programmers.co.kr Solution ํต์ฌ 1. ๋ชจ๋ ์๊ฐ์ ์ด๋ก ํ์ฐํ๊ธฐ ์ด ์ฌ์์๊ฐ, ๊ด๊ณ ์๊ฐ, ์์ฒญ์๋ค์ด ์ฌ์์ ์์ํ ์๊ฐ, ์์ฒญ์๋ค์ด ์ฌ์์ ๋๋ธ ์๊ฐ์ ๋ชจ๋ ์ด๋ก ํ์ฐํฉ๋๋ค. ex) ์ด ์ฌ์์๊ฐ์ด 1์๊ฐ 11๋ถ 11์ด ์ด๋ผ๋ฉด -> 60๋ถ 11๋ถ 11์ด -> 3600์ด + 660์ด + 11์ด = 4271์ด (์๋ Source Code์์ makeSeconds ํจ์๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์.) 2.์ด..
2021. 4. 11.
[Swift] 2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด์ญ ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ(Youtube ํ์ดํฌํจ)
Youtube ํ์ด Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ ๊ฒ์ [[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 Solution board๋ฅผ ๊ฐ index์ ์๋ ์ซ์๋ค๋ก ๊ตฌ์ฑํด์ array ๋ฐฐ์ด์ ๋ง๋ค์ด์ค๋ค. array์์ 0์ ์์ ์ค๋๋ค. ๋ฝ์ ์ซ์๋ค์ ๋ด์ basket ๋ฐฐ์ด์ ๋ง๋ค์ด์ค๋๋ค. moves์์ ์๋ ์ซ์๋ค์ array index์ด๋ฏ๋ก array์ index๋ฒ์งธ์์ ์ฒซ๋ฒ์งธ ์ซ์๋ฅผ ์ ๊ฑฐํด์ค๋๋ค. array์ ๋งจ ์ฒซ๋ฒ์งธ ์ซ์์ basket์ ๋งจ ๋ง์ง๋ง ์ซ์๋ฅผ ๋น๊ตํ์ฌ ๋ง์ฝ ๊ฐ๋ค๋ฉด basket์ ๋งจ ๋ง์ง๋ง ์ซ์๋ฅผ ์ ๊ฑฐํด์ฃผ๊ณ count๋ฅผ +2 ํด์ค๋๋ค. So..
2021. 3. 26.
[Swift] ํ๋ก๊ทธ๋๋จธ์ค ๊ฐ์ฅ ๋จผ ๋
ธ๋ (์ฌ์ด ํ์ด ํฌํจ)
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - ๊ฐ์ฅ ๋จผ ๋
ธ๋ 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr Solution ํด๋น ๋ฌธ์ ๋ BFS๋ก ํ์ด์ผ ํ๋ ๋ฌธ์ ์
๋๋ค. 1๋ถํฐ ์์ํด์ 1๊ณผ ์ฐ๊ฒฐ๋ ์ซ์๋ค ๊ทธ๋ฆฌ๊ณ ์ฐ๊ฒฐ๋ ์ซ์๋ค๊ณผ ์ฐ๊ฒฐ๋ ์ซ์๋ค์ ๋์ดํด์ค๋๋ค. ๋์ดํ๋ฉด ์๋ ๊ทธ๋ฆผ์ฒ๋ผ ๋ ๊ฒ์
๋๋ค. ์ฌ๊ธฐ์ ์ฐ๋ฆฌ๋ ํ ๋ผ์ธ์ด ์ฐ๊ฒฐ๋ ๋๋ง๋ค ๋ผ์ธ์ ์ซ์๋ฅผ ๋๋ ค๊ฐ์ค๋๋ค. ์ ๊ทธ๋ฆผ์์ ์ผ์ชฝ ํ๋์ ์ซ์ ๋ชจ์์ ์ฐธ๊ณ ํด์ฃผ์ธ์. ํ์ง๋ง ๋ผ์ธ 2๊น์ง ์์ ๋ ๋ฌธ์ ์ ์ด ์๊ธฐ๋๋ฐ์. 2์ ์ฐ๊ฒฐ๋ 1,3,4,5 ์ค์์ 1๊ณผ 3์ ๊ฐ ํ์๊ฐ ์์ต๋๋ค. ์๋ํ๋ฉด ์ด๋ฏธ ์์์ ์ฐ๊ฒฐ์ ๋ง๋ค์ด์ค ์ซ์๋ค์ด๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ์ด๋ฏธ ..
2021. 3. 7.
[Swift] ํ๋ก๊ทธ๋๋จธ์ค ์ฌ ์ฐ๊ฒฐํ๊ธฐ
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ฌ ์ฐ๊ฒฐํ๊ธฐ 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr Solution ํด๋น ๋ฌธ์ ๋ Greedy ๋ฌธ์ ์
๋๋ค. ๊ทธ ์ค์์๋ ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํ์ด์ผํ๋ ๋ฌธ์ ์
๋๋ค. ํฌ๋ฃจ์ค์นผ ์๊ณ ๋ฆฌ์ฆ์ด๋?๐ค "์ปดํจํฐ ๊ณผํ์์, ํฌ๋ฌ์ค์ปฌ ์๊ณ ๋ฆฌ์ฆ(์์ด: Kruskal’s algorithm)์ ์ต์ ๋น์ฉ ์ ์ฅ ๋ถ๋ถ ํธ๋ฆฌ๋ฅผ ์ฐพ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ณ์ ๊ฐ์๋ฅผ {\displaystyle E}E, ๊ผญ์ง์ ์ ๊ฐ์๋ฅผ {\displaystyle V}V๋ผ๊ณ ํ๋ฉด ์ด ์๊ณ ๋ฆฌ์ฆ์ {\displaystyle {\color {Blue}O}(E\log V)}{\color {Blue}O}(E\log V)์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋ค." ์ํค๋ฐฑ๊ณผ์ ์ด๋ ๊ฒ..
2021. 2. 20.