BFS4 [์๋ฐ] ๋ฐฑ์ค 1697 - ์จ๋ฐ๊ผญ์ง ๋ BFS๋ก ํ์๋๋ฐ, ์ฌ์ค DFS๊ฐ ๋ ๋น ๋ฅผ ์ ๋ฐ์ ์์ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ์ฝ๊ฒ ํ์ด์ ๋ถ๋ช ๋์ด๋๊ฐ ๋์์ง๋ ์๋ฆฌ์ฆ ๋ฌธ์ ๋ค์ด ์์ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋๋ฐ, ์ง์ง ์๋ค. ์ผํ ๋ดค์ ๋์๋ ์จ๋ฐ๊ผญ์ง 4๊น์ง๋ N, K ๋ฒ์๋ ๋๊ฐ๊ณ ๋ฌธ์ ๋ ๊ฑฐ์ ์ ์ฌํ ๊ฒ ๊ฐ์๋ฐ ๋์ด๋๊ฐ ์ฐจ์ด๋์ ๋ญ์ง ์ถ๋ค. ํ ์คํธ ๋ฐ์ดํฐ ์ฐจ์ด์ธ๊ฐ? /* 2020.12.12(ํ )*/ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; public class Main { public static void main(String[] arg.. 2020. 12. 12. [์๋ฐ] ๋ฐฑ์ค 1012 - ์ ๊ธฐ๋ ๋ฐฐ์ถ ๋ฌธ์ ๋ BFS๋ก ๊ฐ๋จํ ํ๋ฆฌ๋๋ฐ, N๊ณผ M์ ๋ฐฉํฅ ๋๋ฌธ์ ํท๊ฐ๋ฆฐ๋ค. ๋๋ ๋ฐฐ์ด์ ์ฌ์ด์ฆ๋ฅผ ๋ํ๋ผ ๋ array[n][m] ์ด๋ ๊ฒ ๋ง์ด ์ฌ์ฉํ๋๋ฐ, ๋ฐ์ง๊ณ ๋ณด๋ฉด ์ธ๋ก์ ๊ธธ์ด๋ฅผ ๊ฐ๋ก์ ๊ธธ์ด๋ณด๋ค ๋จผ์ ๋ํ๋ด๋ ๊ฑฐ๋ค. ๊ทผ๋ฐ ๋ฌธ์ ์ ๋ ฅ์์๋ (X,Y) ์์ผ๋ก ์ฃผ์ด์ง๋ค. ์ฆ, ์ขํ ํ๋ฉด์ ์๊ฐํ ๋ ๋ง์ด ์ฌ์ฉํ๋ ๋ฐฉ์์ผ๋ก ๊ฐ๋ก ์์น๋ฅผ ์ธ๋ก ์์น๋ณด๋ค ๋จผ์ ์๋ ค์ฃผ๋ ๊ฒ! ๋ณ ๊ฑฐ ์๋ ์๋ ์๋๋ฐ, ์ฝ๋์งค ๋ Y๋ฅผ ์์ ๋๊ณ ์๊ฐํ ๋ผ๋๊น ๋ญ๊ฐ ๋ฏ์ค์ด์ ํท๊ฐ๋ ธ๋ค. N์ด M๋ณด๋ค ๋จผ์ ์ค๋ ๊ฑด ํ๋๋ ์ ํท๊ฐ๋ฆฌ๋๋ฐ! /* 2020.12.06(์ผ)*/ import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.LinkedList; impor.. 2020. 12. 6. [์๋ฐ] ๋ฐฑ์ค 2667 - ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ ํ๋๋ง๋ค ์๋กญ๋ค. ์ ๊ธฐํ๋ค. ๋ค ๋ฐฉํฅ์ ์๋ค ๊ฐ๋ค ํ ์ ์๋๋ก 2์ฐจ์ int๋ฐฐ์ด์ ๋ง๋ค์ด์ for๋ฌธ์ผ๋ก ํ๋์ฉ que์ ๋ด์์ฃผ๋ ๋ถ๋ถ์ด ํญ์ ํท๊ฐ๋ฆฐ๋ค. int[][] dir = { {0,1}, {0,-1}, {1,0}, {-1,0} }; BFS์์๋ que ์์์ if๋ฌธ์ ์กฐ๊ฑด์ ์ ๋๋ก ์ธ์ฐ๋ ๋จ๊ณ๊ฐ ์ ์ผ ๊น๋ค๋กญ๊ฒ ๋๊ปด์ง๋ค. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Collections; import java.util.LinkedList; import java.util.Queue; public class Main2667_๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ { static.. 2020. 12. 6. [์๋ฐ] ๋ฐฑ์ค 2606 - ๋ฐ์ด๋ฌ์ค ์ด๋ ค์ด ๋ฌธ์ ๋ ์ด๋ ๊ฒ ์ฝ๊ฒ ํ๋ ธ์ผ๋ฉด ์ข๊ฒ ๋ค ํํํํํ ArrayList ๋ฐฐ์ด์ ๋ง๋ค์ด์ BFS๋ก ํ์๋ค. Queue์๋ค๊ฐ 1์ด๋ ์ด์ด์ง ์ปดํจํฐ๋ค ๋ฒํธ ๋ฃ๊ณ , infected ์ฌ๋ถ ์ฒดํฌํด์ infected=false์ธ ์ปดํจํฐ๋ค๋ง ๋ค์ ํ์๋ค๊ฐ ์ง์ด ๋ฃ์ด์คฌ๋ค. ์ด๋ฏธ ๊ฐ์ผ ํ์ธ๋ ์ปดํจํฐ๋ผ๋ฉด ๊ฐ์ผ์ ํ์ธํ ์์ ์ ์ฐ๊ฒฐ๋ ์ปดํจํฐ๋ค์ ๋ค ํ์๋ค๊ฐ ๋ฃ์ด์คฌ์ ํ ๋๊น! N์ ๋ฒ์๊ฐ ์์์ ์ธ์ ๋ฆฌ์คํธ ๋์ ์ N+1 x N+1 ํ๋ ฌ์ ๋ง๋ค์ด์ ์ฒดํฌํ์ด๋ ๋์ ๊ฒ ๊ฐ๋ค. ์ ์๋ฅผ ๋ค์ด, network[A][B] = 1 = network[B]=[A] ์ด๋ฐ ์์ผ๋ก? import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList.. 2020. 12. 5. ์ด์ 1 ๋ค์