Seize your moment! ๐Ÿ‘พ

์•ˆ๋…•ํ•˜์„ธ์š”. Eric์ž…๋‹ˆ๋‹ค. ์ œ ๋ธ”๋กœ๊ทธ์— ๋ฐฉ๋ฌธํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ๊ฐœ๋ฐœ๊ณต๋ถ€/Algorithm

[Eric's ๋ฐฑ์ค€] 2583๋ฒˆ - ์˜์—ญ ๊ตฌํ•˜๊ธฐ - Java

Eric_ko 2023. 2. 11. 17:23

์•ˆ๋‡ฝํ•˜์„ธ์š”! Eric ์ž…๋‹ˆ๋‹ค!

์˜ค๋Š˜์€ ์ œ๊ฐ€ bfs ๋ฌธ์ œ๋ฅผ ํ•˜๋‚˜ ํ’€์–ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค!

๋ฌธ์ œ๋Š” ๋ฐฑ์ค€ 2583๋ฒˆ ์˜์—ญ๊ตฌํ•˜๊ธฐ ๋ฌธ์ œ ์ž…๋‹ˆ๋‹ค!

 

๋ฌธ์ œ

ํ•ด์„ค

์šฐ์„ ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ์œ„ํ•ด์„œ๋Š” map ์ด๋ผ๋Š” int[][] ๋ฐฐ์—ด์„ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค.

์ด๋•Œ์˜ int[][] map = new intp[M][N] ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

์™œ๋ƒํ•˜๋ฉด ํ•ด๋‹น ๋ชจ๋ˆˆ์ข…์ด๊ฐ€ ์ž…๋ ฅ์˜ ์ฒซ๋ฒˆ์งธ ์ค„์—์„œ ๊ทธ๋ ‡๊ฒŒ ์ฃผ์–ด์ง€๋ฏ€๋กœ

๊ทธ๋ฆฌ๊ณ  ์ž…๋ ฅ์˜ ์ฒซ๋ฒˆ์งธ ์ค„์—์„œ ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐ›๋Š” K๊ฐ’์€ 

for ๋ฌธ์„ ํ†ตํ•ด์„œ K๋ฒˆ ๋Œ์•„์„œ ์ž…๋ ฅ์—์„œ ์ฃผ์–ด์ง„ ๊ฐ’์„ map ์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  bfs ๋ฅผ ๋Œ๋ฉด์„œ

ํ•ด๋‹น ํ•˜๋Š” ์˜์—ญ์˜ ๋ฉด์ ์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค.

bfs ๋ฅผ ๋Œ๋ฉด์„œ dx, dy๋ฅผ ํ†ตํ•ด์„œ ์‹œ์ž‘์ ์„ ๊ธฐ์ค€์œผ๋กœ ์ƒ,ํ•˜,์ขŒ,์šฐ ์˜ map ๊ฐ’์ด 0 ์ด๋ฉด ํ•ด๋‹น์˜์—ญ์œผ๋กœ ์ด๋™ํ•˜๋ฉด์„œ

์˜์—ญ์˜ ํฌ๊ธฐ๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๊ณ ,

๋งŒ์•ฝ map๊ฐ’์ด 1 ์ด๋ฉด ๊ทธ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ๋Š” ์ด๋™ํ•˜์ง€ ์•Š๊ณ  ๋๋ƒ…๋‹ˆ๋‹ค.

์ด๋•Œ, ์ด๋™ํ•˜๋Š” ๋งŒํผ์˜ ์–‘์ด ์šฐ๋ฆฌ๊ฐ€ ๊ตฌํ•˜๊ณ ์žํ•˜๋Š” ๋ฉด์ ์˜ ํฌ๊ธฐ๋ฅผ area+1 ์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์™œ๋ƒํ•˜๋ฉด ํ•ด๋‹น ๋ˆˆ๊ธˆ์˜ ๋ฉด์ ์ด 1*1 ์ด๋ฏ€๋กœ area+1์„ ํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  bfs๋ฅผ ๊ตฌํ•˜๋Š” ์กฐ๊ฑด์ด ๋ ๋•Œ๋งˆ๋‹ค cnt+1์„ ํ•ด์ฃผ์–ด

๋‚˜๋ˆ„์–ด์ง„ ํ•ด๋‹น ๋ถ€๋ถ„์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ฝ”๋“œ

Solved.ac ํ”„๋กœํ•„