- ๋์ ํ๋ก๊ทธ๋๋ฐ
- ์นด์นด์ค2021
- ์ด๋ถํ์
- ์ฌ๊ท
- ํ๋ฆฌ์จ๋ณด๋ฉ
- C++
- LCs
- ๋ค์ต์คํธ๋ผ
- ์นด์นด์ค ์ฝํ
- DP
- ํธ๋ฆฌ
- ๋ฐฑ์ค
- js
- ๋นํธ๋ง์คํน
- Union-Find
- go
- ํ๋ก๊ทธ๋๋จธ์ค
- golang
- nestjs
- ๋นํธ๋งต
- ์น๋ฆฐ์ด
- BFS
- ๋ฐฑ์๋ ํ๋ฆฌ์จ๋ณด๋ฉ
- ์์ฝ๋
- ๊ฐ์ฅ๊ฐ๊น์ด๊ณตํต์กฐ์
- ์๊ณ ๋ฆฌ์ฆ
- ์ํฐ๋
- ์ฌ๋ผ์ด๋ฉ ์๋์ฐ
- DFS
- Python
- Today
- Total
๋ชฉ๋กBFS (11)
Hello Ocean! ๐ผ
๋ฌธ์ https://programmers.co.kr/learn/courses/30/lessons/67259 ์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๊ฒฝ์ฃผ๋ก ๊ฑด์ค [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr ๋ฌธ์ ๋ฅผ ์์ฝํ์๋ฉด, ์ ์ฌ๊ฐํ ๋ชจ์์ board์์ (0, 0)์์ (N-1, N-..
๋ฌธ์ https://programmers.co.kr/learn/courses/30/lessons/43163 ๋ ๊ฐ์ ๋จ์ด begin, target๊ณผ ๋จ์ด์ ์งํฉ words๊ฐ ์์ต๋๋ค. ์๋์ ๊ฐ์ ๊ท์น์ ์ด์ฉํ์ฌ begin์์ target์ผ๋ก ๋ณํํ๋ ๊ฐ์ฅ ์งง์ ๋ณํ ๊ณผ์ ์ ์ฐพ์ผ๋ ค๊ณ ํฉ๋๋ค. 1. ํ ๋ฒ์ ํ ๊ฐ์ ์ํ๋ฒณ๋ง ๋ฐ๊ฟ ์ ์์ต๋๋ค. 2. words์ ์๋ ๋จ์ด๋ก๋ง ๋ณํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด begin์ด "hit", target๊ฐ "cog", words๊ฐ ["hot","dot","dog","lot","log","cog"]๋ผ๋ฉด "hit" -> "hot" -> "dot" -> "dog" -> "cog"์ ๊ฐ์ด 4๋จ๊ณ๋ฅผ ๊ฑฐ์ณ ๋ณํํ ์ ์์ต๋๋ค. ๋ ๊ฐ์ ๋จ์ด begin, target๊ณผ ๋จ์ด์ ..
๋ฌธ์ https://www.acmicpc.net/problem/1941 1941๋ฒ: ์๋ฌธ๋ ์น ๊ณต์ฃผ ์ด 25๋ช ์ ์ฌํ์๋ค๋ก ์ด๋ฃจ์ด์ง ์ฌํ์๋ฐ์ 5*5์ ์ ์ฌ๊ฐํ ๊ฒฉ์ ํํ๋ก ์๋ฆฌ๊ฐ ๋ฐฐ์น๋์๊ณ , ์ผ๋ง ์ง๋์ง ์์ ์ด๋ค์๊ณผ ์๋์ฐ์ด๋ผ๋ ๋ ํ์์ด ๋๊ฐ์ ๋ํ๋ด๋ฉฐ ๋ค๋ฅธ ํ์๋ค์ ํ์ด์ก๊ธฐ ์์ www.acmicpc.net ์ด 25๋ช ์ ์ฌํ์๋ค๋ก ์ด๋ฃจ์ด์ง ์ฌํ์๋ฐ์ 5*5์ ์ ์ฌ๊ฐํ ๊ฒฉ์ ํํ๋ก ์๋ฆฌ๊ฐ ๋ฐฐ์น๋์๊ณ , ์ผ๋ง ์ง๋์ง ์์ ์ด๋ค์๊ณผ ์๋์ฐ์ด๋ผ๋ ๋ ํ์์ด ๋๊ฐ์ ๋ํ๋ด๋ฉฐ ๋ค๋ฅธ ํ์๋ค์ ํ์ด์ก๊ธฐ ์์ํ๋ค. ๊ณง ๋ชจ๋ ์ฌํ์์ด ‘์ด๋ค์ํ’์ ‘์๋์ฐํ’์ ๋ ํ๋ก ๊ฐ๋ผ์ง๊ฒ ๋์์ผ๋ฉฐ, ์ผ๋ง ์ง๋์ง ์์ ‘์๋์ฐํ’๊ฐ ์ธ๋ ฅ์ ํ์ฅ์ํค๋ฉฐ ‘์ด๋ค์ํ’๋ฅผ ์ํํ๊ธฐ ์์ํ๋ค. ์๊ธฐ์์์ ๋๋ ‘์ด๋ค์ํ’์ ํ์๋ค์ ๊ณผ๊ฐํ..
๋ฌธ์ https://www.acmicpc.net/problem/17244 17244๋ฒ: ์๋ง๋ค์ฐ์ฐ ๊ฒฝ์ฌ์จ๋ ์ ๋ ์ฝ์์ ๊ฐ๊ธฐ ์ ์ฑ๊ธฐ์ง ์์ ๋ฌผ๊ฑด๋ค์ด ์๋ ์ง ํ์ธํ๊ณ ์๋ค. ํ์ํ ๋ฌผ๊ฑด์ ์ ๋ถ ์ฑ๊ธด ๊ฒ ๊ฐ์๊ณ ์ธ์ถ ํ ๋์์ค๋ ๊ธธ์ ๊ฒฝ์ฌ์จ๋ ์ธ์ณค๋ค. "์ ๋ง๋ค ์ฐ์ฐ!!!" ๊ฒฝ์ฌ ์จ๋ ๋งค๋ฒ ์ธ์ถ www.acmicpc.net 2์ฐจ์ ๋งต์์, ์ถ๋ฐ์์ ๋์ฐฉ์ ์ผ๋ก ๊ฐ๋๋ฐ, X๋ก ํ์๋ ํ์ํ ๋ฌผ๊ฑด๋ค์ ๋ชจ๋ ์ฑ๊ฒจ์ ๋๊ฐ๋ ์ต์ ์ด๋๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. ํ์ด ๊ทธ๋ํ์์์ ์ต์ ์ด๋ ํ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๊ธฐ ๋๋ฌธ์ BFS๋ฅผ ์ด์ฉํ๋ค. ๊ทธ๋ฆฌ๊ณ , ๊ทธ๋ํ์์ X๊ฐ ์๋ ์ง์ ์ ๋ชจ๋ ๋ฐฉ๋ฌธํ๋๊ฒ ์กฐ๊ฑด์ด๊ธฐ ๋๋ฌธ์ X๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ์ด๋ป๊ฒ ํ ์ง ๊ณ ๋ฏผํ๋ค๊ฐ, X๊ฐ ์ต๋ 5๊ฐ๋ผ๊ณ ํด์ ๊ธธ์ด 5์ง๋ฆฌ ๋นํธ๋ง์คํฌ๋ฅผ ์ด์ฉํด์ ๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ํด์ฃผ..
๋ฌธ์ https://www.acmicpc.net/problem/1600 1600๋ฒ: ๋ง์ด ๋๊ณ ํ ์์ญ์ด ์ฒซ์งธ ์ค์ ์ ์ K๊ฐ ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์ ๊ฒฉ์ํ์ ๊ฐ๋ก๊ธธ์ด W, ์ธ๋ก๊ธธ์ด H๊ฐ ์ฃผ์ด์ง๋ค. ๊ทธ ๋ค์ H์ค์ ๊ฑธ์ณ W๊ฐ์ ์ซ์๊ฐ ์ฃผ์ด์ง๋๋ฐ, 0์ ์๋ฌด๊ฒ๋ ์๋ ํ์ง, 1์ ์ฅ์ ๋ฌผ์ ๋ปํ๋ค. ์ฅ์ ๋ฌผ์ด ์ www.acmicpc.net ํ์ด [BFS + ๊ตฌ์กฐ์ฒด] BFS๋ฅผ ์ด์ฉํด์ ํ๋ฉด ๋๋ ๋ฌธ์ ์๋ค. ์ผ๋ฐ์ ์ธ BFS์์, ์ํ์ข์ฐ๋ก ์ด๋ํ๋ ๊ฒ๋ง์ ๊ณ ๋ คํ๋ค๋ฉด, ์ด ๋ฌธ์ ์์๋ "๋ง ์ฒ๋ผ ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ"๋ ๊ณ ๋ คํด์ BFS๋ฅผ ๋๋ ค์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์๋ค. ๋ค๋ง "๋ง ์ฒ๋ผ ์์ง์ผ ์ ์๋ ํ์"๊ฐ K๋ฒ์ผ๋ก ์ ํด์ ธ์์ผ๋ฏ๋ก, ๋จ์ ํ์ k๋ ํ์ ๋ฃ์ด ํ์ธํด์ฃผ์๋ค. * ์ฒ์์ visited๋ฐฐ์ด์ 2์ฐจ์์ผ๋ก ๋ง๋ค์ด์ ..
๋ฌธ์ https://www.acmicpc.net/problem/1194 0์์ ์ถ๋ฐํ์ฌ 1๊น์ง ๊ฐ ์ ์๋ ์ต๋จ๊ฒฝ๋ก๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. #์ ์ง๋๊ฐ ์ ์๊ณ , a~f๋ ์ด์ , A~F๋ ๋ฌธ์ด๋ฉฐ ๊ฐ ๋ฌธ์ ์ง๋๊ธฐ ์ํด์๋ ํด๋นํ๋ ์๋ฌธ์ ์ด์ ๋ฅผ ๊ฐ์ง๊ณ ์์ด์ผํ๋ค. ํ์ด ์ด์ ์ ๋ฌธ์ด๋ผ๋ ์์๊ฐ ์ถ๊ฐ๋๊ธฐ๋ ํ์ง๋ง, ๊ธฐ๋ณธ์ ์ผ๋ก๋ BFS๋ฅผ ์ด์ฉํ์ฌ ์ต๋จ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๋ฌธ์ ์ด๋ค. ๊ตฌ์กฐ์ฒด๋ฅผ ๋ง๋ค์ด์ BFS๋ฅผ ๋๋ฆฌ๋๊ฒ ๊น์ง๋ ๋น๊ต์ ์ผ๋ก ๊ธ๋ฐฉ ํ ์ ์์๋๋ฐ, ๋ฉ๋ชจ๋ฆฌ์ด๊ณผ๊ฐ ๋ฌ๋ค. visited๋ฐฐ์ด์ visited[2][2][2][2][2][2][51][51]๋ก ๋ง๋ค๊ณ , ๊ตฌ์กฐ์ฒด์ 6์นธ์ง๋ฆฌ vector๋ฅผ ๋ฃ์ด์ ๊ทธ๋ฐ ๊ฒ ๊ฐ์๋ค. ๊ฒ์์ ํด๋ณด๋, ์ด์ ๊ด๋ จ ๋ถ๋ถ์ "๋นํธ๋ง์คํน"์ผ๋ก ํด๊ฒฐํด์ผ ํ๋ ๋ฌธ์ ์๋ค. ๋ฐ๋ผ์ visited๋ฐฐ์ด์..