๋งต์ด ์žˆ์Šต๋‹ˆ๋‹ค.



๋งต ์ œ๋„ˆ๋ ˆ์ดํŒ… ํ•ด์ค„๋•Œ ์—์ดˆ์— ๋งต๋ณด๋‹ค ๊ฐ€๋กœ์„ธ๋กœ 2๊ทธ๋ฆฌ๋“œ์”ฉ ํฌ๊ฒŒ ์žก์€๋’ค ์‹ค์ œ ๋งต์€ ์‚ฌ์ด์ฆˆ -2์”ฉ ์ œ๋„ˆ๋ ˆ์ดํŒ… ํ•˜๊ฒŒ ํ•ด์ฃผ์„ธ์š”.


(๋งต ๋ฐฐ์—ด ํฌ๊ธฐ๊ฐ€ x =100, y= 200์ด๋ฉด ๋งต ์ œ๋„ˆ๋ ˆ์ดํŒ… ํ• ๋•Œ๋Š” x =98, y= 98๋กœ ์ œ๋„ˆ๋ ˆ์ดํŒ… ํ•˜๋ฉด ์ตœ์™ธ๊ณฝ๋ถ€๊ฐ€ย ์ซ™ ์ด์–ด์ง)




(0,0)์ขŒํ‘œ์— flood fill ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ ์šฉํ•ด์ฃผ๋ฉด ์ตœ์™ธ๊ฐย ๊ฑธ๋Ÿฌ์ง




flood fill์ด ๋ญ”์ง€ ๋งํ•˜์ž๋ฉด


์‰ฝ๊ฒŒ๋งํ•ด์„œ



๊ทธ๋ฆผํŒ์˜ ์š” ํŽ˜์ธํŠธ์ž„


์ข€๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜์ž๋ฉด


์š”๋ ‡๊ฒŒ ์‹œ๋“œ์  ๊ธฐ์ค€์œผ๋กœ ์šฐ์„  ์ž๊ธฐ์ž์‹ ์„ ์›ํ•˜๋Š” ์ƒ‰์œผ๋กœ ์น ํ•˜๊ณ  ํ•œ๋ฐฉํ–ฅ์„ ์ฒดํฌํ•ด์„œ ์ž๊ธฐ๋ž‘ ๊ฐ™์€ ์ƒ‰์ด๋ฉด ์ž๊ธฐ ์ž์‹ ์„ ์žฌ๊ท€ย ํ˜ธ์ถœ.


๋งŒ์•ฝ ๋‹ค๋ฅด๋ฉด ๋ฌด์‹œ.


๊ทธ๋ ‡๊ฒŒ ๋„ค๋ฐฉํ–ฅ์„ ์ฒดํฌ(์›ํ•˜๋ฉด 8๋ฐฉํ–ฅ ์ฒดํฌํ•ด๋„ ๋ฌด๊ด€)


์ด๋Ÿฌ๋ฉด ์ด์–ด์ ธ์žˆ๋Š”๊ฑด ๋ชจ๋‘ ์ƒ‰์น ๋จ.




์š”๊ฑด ์œ„ํ‚ค์— ๋ˆ„๊ฐ€ ์˜ฌ๋ ค๋‘” flood fill์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์›€์งค๋กœ ๋งŒ๋“ค์–ด๋‘”๊ฑฐ.



์—ฌ๊ธฐ์„œ๋Š” ๋ฒฝ์„ ์ฒดํฌํ•ด์•ผ๋˜๋‹ˆ๊น


์‹œ๋“œ์  ๊ธฐ์ค€์œผ๋กœ ๊ฐ™์€ ์ƒ‰(๋ง‰ํžŒ ๊ณต๊ฐ„)์ด๋ฉด ์ž๊ธฐ์ž์‹ ์„ ํ˜ธ์ถœ, ๋ฒฝ์ด๋ฉด ์ตœ์™ธ๊ฐ๋ฒฝ๊ฐ’์„ ์ฃผ๊ณ  ์ž๊ธฐ์ž์‹ ์„ ํ˜ธ์ถœํ•˜์ง€ ์•Š์Œ.


์ด๋Ÿฐ์‹์œผ๋กœ ์ฃผ๋ฉด ์ตœ์™ธ๊ณฝ ๋ฒฝ๋งŒ ์ „๋ถ€ ์น ํ•ด์ง.



flood fill ์†Œ์Šค์•ผ ์—ฌ๊ธฐ์ €๊ธฐ ๋„๋ ธ๋Š”๋ฐ


์ด๊ฑฐ ๊ทธ๋ƒฅ ์žฌ๊ท€ย ํ˜ธ์ถœ ํ•จ์ˆ˜๋กœ ์งœ๋ฉด ์กฐ๊ธˆ๋งŒ ์‚ฌ์ด์ฆˆ ์ปค์ ธ๋„ ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ๋œจ๊ณ  ์„ฑ๋Šฅ ๊ฐœํŒ๋จ.


๊ทธ๋ž˜์„œ ์Šคํƒ์ด๋‚˜ ํ ์“ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธ์–ด์˜ค๋ฉด๋จ.



๊ตฌ๊ธ€์—


flood fill using queue


flood fill without recursion


์š”๋Ÿฐ ๊ฒ€์ƒ‰์–ด ์น˜๋ฉด ์žฌ๊ท€ํ•จ์ˆ˜ ํ˜•ํƒœ๋กœ ์•ˆํ•˜๊ณ  ์Šคํƒ์ด๋‚˜ ํ์จ์„œ ๋งŒ๋“  ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋„˜์ณํ๋ฆ„.



์ƒ๊ฐ๋ณด๋‹ค ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ณ  ์ƒ๊ฐ๋ณด๋‹ค ์žฌ๋ฏธ์žˆ์œผ๋‹ˆ๊น ํ•œ๋ฒˆ ๊ตฌํ˜„ํ•ด๋ด!



๊ทผ๋ฐ ์ด๊ฒŒ ์‚ฌ์ด์ฆˆ๊ฐ€ ๋ฌด์ง€๋ฌด์ง€๋ฌด์ง€ ํฌ๋ฉด ์„ฑ๋Šฅ์ €ํ•˜๋„ ์‰ฝ๊ฒŒ ์ผ์–ด๋‚˜์„œ


๋งŒ๋“œ๋Š” ๊ฒŒ์ž„์— ๋งž๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ธ์ง€๋Š” ๋‚˜๋„ ์ž˜ ๋ชจ๋ฅด๊ฒŸ์Œ ใ…‹ใ…‹


ย