๋ชฉ๋กBFS (11)

Hello Ocean! ๐ŸŒผ

[๋ฐฑ์ค€/C++] 1941. ์†Œ๋ฌธ๋‚œ ์น ๊ณต์ฃผ

๋ฌธ์ œ https://www.acmicpc.net/problem/1941 1941๋ฒˆ: ์†Œ๋ฌธ๋‚œ ์น ๊ณต์ฃผ ์ด 25๋ช…์˜ ์—ฌํ•™์ƒ๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ ์—ฌํ•™์ƒ๋ฐ˜์€ 5*5์˜ ์ •์‚ฌ๊ฐํ˜• ๊ฒฉ์ž ํ˜•ํƒœ๋กœ ์ž๋ฆฌ๊ฐ€ ๋ฐฐ์น˜๋˜์—ˆ๊ณ , ์–ผ๋งˆ ์ง€๋‚˜์ง€ ์•Š์•„ ์ด๋‹ค์†œ๊ณผ ์ž„๋„์—ฐ์ด๋ผ๋Š” ๋‘ ํ•™์ƒ์ด ๋‘๊ฐ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ ๋‹ค๋ฅธ ํ•™์ƒ๋“ค์„ ํœ˜์–ด์žก๊ธฐ ์‹œ์ž‘ www.acmicpc.net ์ด 25๋ช…์˜ ์—ฌํ•™์ƒ๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ ์—ฌํ•™์ƒ๋ฐ˜์€ 5*5์˜ ์ •์‚ฌ๊ฐํ˜• ๊ฒฉ์ž ํ˜•ํƒœ๋กœ ์ž๋ฆฌ๊ฐ€ ๋ฐฐ์น˜๋˜์—ˆ๊ณ , ์–ผ๋งˆ ์ง€๋‚˜์ง€ ์•Š์•„ ์ด๋‹ค์†œ๊ณผ ์ž„๋„์—ฐ์ด๋ผ๋Š” ๋‘ ํ•™์ƒ์ด ๋‘๊ฐ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ ๋‹ค๋ฅธ ํ•™์ƒ๋“ค์„ ํœ˜์–ด์žก๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ๊ณง ๋ชจ๋“  ์—ฌํ•™์ƒ์ด ‘์ด๋‹ค์†œํŒŒ’์™€ ‘์ž„๋„์—ฐํŒŒ’์˜ ๋‘ ํŒŒ๋กœ ๊ฐˆ๋ผ์ง€๊ฒŒ ๋˜์—ˆ์œผ๋ฉฐ, ์–ผ๋งˆ ์ง€๋‚˜์ง€ ์•Š์•„ ‘์ž„๋„์—ฐํŒŒ’๊ฐ€ ์„ธ๋ ฅ์„ ํ™•์žฅ์‹œํ‚ค๋ฉฐ ‘์ด๋‹ค์†œํŒŒ’๋ฅผ ์œ„ํ˜‘ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ์œ„๊ธฐ์˜์‹์„ ๋Š๋‚€ ‘์ด๋‹ค์†œํŒŒ’์˜ ํ•™์ƒ๋“ค์€ ๊ณผ๊ฐํžˆ..

Algorithm 2021. 8. 24. 19:03
[C++/๋ฐฑ์ค€] 17244. ์•„๋งž๋‹ค์šฐ์‚ฐ

๋ฌธ์ œ https://www.acmicpc.net/problem/17244 17244๋ฒˆ: ์•„๋งž๋‹ค์šฐ์‚ฐ ๊ฒฝ์žฌ์”จ๋Š” ์ €๋… ์•ฝ์†์„ ๊ฐ€๊ธฐ ์ „ ์ฑ™๊ธฐ์ง€ ์•Š์€ ๋ฌผ๊ฑด๋“ค์ด ์žˆ๋Š” ์ง€ ํ™•์ธํ•˜๊ณ  ์žˆ๋‹ค. ํ•„์š”ํ•œ ๋ฌผ๊ฑด์€ ์ „๋ถ€ ์ฑ™๊ธด ๊ฒƒ ๊ฐ™์•˜๊ณ  ์™ธ์ถœ ํ›„ ๋Œ์•„์˜ค๋Š” ๊ธธ์— ๊ฒฝ์žฌ์”จ๋Š” ์™ธ์ณค๋‹ค. "์•„ ๋งž๋‹ค ์šฐ์‚ฐ!!!" ๊ฒฝ์žฌ ์”จ๋Š” ๋งค๋ฒˆ ์™ธ์ถœ www.acmicpc.net 2์ฐจ์› ๋งต์—์„œ, ์ถœ๋ฐœ์—์„œ ๋„์ฐฉ์ ์œผ๋กœ ๊ฐ€๋Š”๋ฐ, X๋กœ ํ‘œ์‹œ๋œ ํ•„์š”ํ•œ ๋ฌผ๊ฑด๋“ค์„ ๋ชจ๋‘ ์ฑ™๊ฒจ์„œ ๋‚˜๊ฐ€๋Š” ์ตœ์†Œ ์ด๋™๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ํ’€์ด ๊ทธ๋ž˜ํ”„์ƒ์—์„œ ์ตœ์†Œ ์ด๋™ ํšŸ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๊ธฐ ๋•Œ๋ฌธ์— BFS๋ฅผ ์ด์šฉํ–ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ , ๊ทธ๋ž˜ํ”„์ƒ์— X๊ฐ€ ์žˆ๋Š” ์ง€์ ์„ ๋ชจ๋‘ ๋ฐฉ๋ฌธํ•˜๋Š”๊ฒŒ ์กฐ๊ฑด์ด๊ธฐ ๋•Œ๋ฌธ์— X๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ์–ด๋–ป๊ฒŒ ํ• ์ง€ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€, X๊ฐ€ ์ตœ๋Œ€ 5๊ฐœ๋ผ๊ณ  ํ•ด์„œ ๊ธธ์ด 5์งœ๋ฆฌ ๋น„ํŠธ๋งˆ์Šคํฌ๋ฅผ ์ด์šฉํ•ด์„œ ๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ํ•ด์ฃผ..

Algorithm 2021. 8. 3. 15:35
[๋ฐฑ์ค€/C++] 1600. ๋ง์ด ๋˜๊ณ ํ”ˆ ์›์ˆญ์ด

๋ฌธ์ œ 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์ฐจ์›์œผ๋กœ ๋งŒ๋“ค์–ด์„œ ..

Algorithm 2021. 6. 29. 20:17
[๋ฐฑ์ค€/C++] 1194. ๋‹ฌ์ด ์ฐจ์˜ค๋ฅธ๋‹ค, ๊ฐ€์ž

๋ฌธ์ œ 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๋ฐฐ์—ด์„..

Algorithm 2021. 6. 2. 21:49