[python]๋ฐฑ์ค€ 1992๋ฒˆ : ์ฟผ๋“œํŠธ๋ฆฌ
Algorithm ๋ฌธ์ œ/BOJ 2020. 2. 29. 12:57

https://www.acmicpc.net/problem/1992 ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 128 MB 10660 6114 4794 57.420% ๋ฌธ์ œ ํ‘๋ฐฑ ์˜์ƒ์„ ์••์ถ•ํ•˜์—ฌ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ ์ฟผ๋“œ ํŠธ๋ฆฌ(Quad Tree)๋ผ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. ํฐ ์ ์„ ๋‚˜ํƒ€๋‚ด๋Š” 0๊ณผ ๊ฒ€์€ ์ ์„ ๋‚˜ํƒ€๋‚ด๋Š” 1๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ์˜์ƒ(2์ฐจ์› ๋ฐฐ์—ด)์—์„œ ๊ฐ™์€ ์ˆซ์ž์˜ ์ ๋“ค์ด ํ•œ ๊ณณ์— ๋งŽ์ด ๋ชฐ๋ ค์žˆ์œผ๋ฉด, ์ฟผ๋“œ ํŠธ๋ฆฌ์—์„œ๋Š” ์ด๋ฅผ ์••์ถ•ํ•˜์—ฌ ๊ฐ„๋‹จํžˆ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฃผ์–ด์ง„ ์˜์ƒ์ด ๋ชจ๋‘ 0์œผ๋กœ๋งŒ ๋˜์–ด ์žˆ์œผ๋ฉด ์••์ถ• ๊ฒฐ๊ณผ๋Š” "0"์ด ๋˜๊ณ , ๋ชจ๋‘ 1๋กœ๋งŒ ๋˜์–ด ์žˆ์œผ๋ฉด ์••์ถ• ๊ฒฐ๊ณผ๋Š” "1"์ด ๋œ๋‹ค. ๋งŒ์•ฝ 0๊ณผ 1์ด ์„ž์—ฌ ์žˆ์œผ๋ฉด ์ „์ฒด๋ฅผ ํ•œ ๋ฒˆ์— ๋‚˜ํƒ€๋‚ด์ง€๋ฅผ ๋ชปํ•˜๊ณ , ์™ผ์ชฝ ์œ„, ์˜ค๋ฅธ์ชฝ ์œ„, ์™ผ์ชฝ ์•„๋ž˜, ์˜ค๋ฅธ์ชฝ ์•„๋ž˜, ์ด๋ ‡๊ฒŒ ..

[python] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ•ด๊ฒฐ ์ „๋žต 1๊ถŒ :: ์ฟผ๋“œ ํŠธ๋ฆฌ ๋’ค์ง‘๊ธฐ (189p) ๋ฌธ์ œ
Algorithm ๋ฌธ์ œ/์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต 2020. 2. 29. 12:54

7.2 ๋ฌธ์ œ : ์ฟผ๋“œ ํŠธ๋ฆฌ ๋’ค์ง‘๊ธฐ (๋ฌธ์ œ ID:QUADTREE, ๋‚œ์ด๋„: ํ•˜) ๋Œ€๋Ÿ‰์˜ ์ขŒํ‘œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ ์•ˆ์— ์••์ถ•ํ•ด ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ ๊ธฐ๋ฒ• ์ค‘ ์ฟผ๋“œ ํŠธ๋ฆฌ๋ž€ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ๊ณต๊ฐ„์„ ํ•ญ์ƒ 4๊ฐœ๋กœ ๋ถ„ํ• ํ•ด ์žฌ๊ท€์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฟผ๋“œ ํŠธ๋ฆฌ๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์—ˆ๋Š”๋ฐ, ์ด์˜ ์œ ๋ช…ํ•œ ์‚ฌ์šฉ์ฒ˜ ์ค‘ ํ•˜๋‚˜๋Š” ๊ฒ€์€ ์ƒ‰๊ณผ ํฐ ์ƒ‰๋ฐ–์— ์—†๋Š” ํ‘๋ฐฑ ๊ทธ๋ฆผ์„ ์••์ถ•ํ•ด ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฟผ๋“œ ํŠธ๋ฆฌ๋Š” 2^N*2^N ํฌ๊ธฐ์˜ ํ‘๋ฐฑ ๊ทธ๋ฆผ์„ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณผ์ •์„ ๊ฑฐ์ณ ๋ฌธ์ž์—ด๋กœ ์••์ถ•ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ทธ๋ฆผ์˜ ๋ชจ๋“  ํ”ฝ์…€์ด ๊ฒ€์€ ์ƒ‰์ผ ๊ฒฝ์šฐ ์ด ๊ทธ๋ฆผ์˜ ์ฟผ๋“œ ํŠธ๋ฆฌ ์••์ถ• ๊ฒฐ๊ณผ๋Š” ๊ทธ๋ฆผ์˜ ํฌ๊ธฐ์— ๊ด€๊ณ„์—†์ด b๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ทธ๋ฆผ์˜ ๋ชจ๋“  ํ”ฝ์…€์ด ํฐ ์ƒ‰์ผ ๊ฒฝ์šฐ ์ด ๊ทธ๋ฆผ์˜ ์ฟผ๋“œ ํŠธ๋ฆฌ ์••์ถ• ๊ฒฐ๊ณผ๋Š” ๊ทธ๋ฆผ์˜ ํฌ๊ธฐ์— ๊ด€๊ณ„์—†์ด w๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ํ”ฝ์…€์ด ๊ฐ™์€ ์ƒ‰์ด ..