ํต ์ ๋ ฌ ๊ฐ๋ ํต ์ ๋ ฌ์ ์ธ๋ถ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ๋ค. pivot์ด๋ผ๋ ์์๋ฅผ ์ ํํ ํ, pivot์ ๊ธฐ์ค์ผ๋ก ์ผ์ชฝ์๋ pivot๋ณด๋ค ์์ ์์๋ค์ ๋๊ณ ์ค๋ฅธ์ชฝ์๋ pivot๋ณด๋ค ํฐ ์์๋ค์ ๋๋๋ค. ์ดํ ์ํํธ์ถ์ ์ด์ฉํ์ฌ ์ฌ๊ท์ ์ผ๋ก ์ผ์ชฝ, ์ค๋ฅธ์ชฝ์ผ๋ก ๋ถ๋ฅํด๋ ์์๋ค์ ๋ํด ์ ๊ณผ ๊ฐ์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค. ์์ ๊ทธ๋ฆผ์ ์ค๋ฅธ์ชฝ ์์๋ค์ ๋ํด ์ํํธ์ถํ ๋ชจ์ต์ด๋ค. ๋ถํ ์ด ๋ถ๊ฐ๋ฅํ ๋๊น์ง ๋ฐ๋ณตํ๋ค๋ณด๋ฉด ์ต์ํ์ ์์๋ก ๋๋์ด์ง๊ณ ์ดํ ์์๋๋ก ๊ฒฐํฉ์ ์งํํ๋ค. ์์ ๊ทธ๋ฆผ์์ ์์ด ์น ํด์ ธ์๋ ์์๋ค์ ์์๋๋ก ํฉ์น๋ฉด ๋๋ค. ํต ์ ๋ ฌ์ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋์ด๋ค. pivot์ผ๋ก 2๊ฐ์ ๋ถ๋ถ ๋ฐฐ์ด์ ์์ฑํ๋ ๋ถํ (Divide) ๊ณผ์ ๊ณผ ๋ถ๋ถ ๋ฐฐ์ด์ ์ฌ๊ท์ ์ผ๋ก ํธ์ถํ๋ ์ ๋ณต(Conquer) ๊ณผ์ ๊ณผ ์ ๋ ฌ๋ ๋ถ๋ถ ๋ฐฐ์ด์ ํฉ..
์ ํ ์ ๋ ฌ ๊ฐ๋ max, min ์ ๋ ฌ์ด๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค. ์ฒ์๋ถํฐ ๋ ์์๊น์ง ํ์ผ๋ฉด์ ์ต์๋ ์ต๋๋ฅผ ์ฐพ์์ ๋ฆฌ์คํธ์ ์ฒ์์ด๋ ๋์ ๋ฃ๊ณ ํด๋น ์์๋ฅผ ์ ์ธํ ๋ค๋ฅธ ์์์ ๋ํด ๋ค์ ์ ๋ ฌ์ ์ํํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ฌด์์๋ก ์ ๋ ฌ๋ ๋ฐ์ดํฐ์ ์ฒ์๋ถํฐ ๋๊น์ง ํ์ํ ํ, ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฆฌ์คํธ์ ๋ง์ง๋ง ์์์ ๊ตํํ๋ค. ๊ทธ ํ ๋ง์ง๋ง ์์๋ฅผ ์ ์ธํ ์ฑ๋ก ์ฒ์๋ถํฐ ๋๊น์ง ๋ฐ์ดํฐ๋ฅผ ํ์ํ ํ, ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฆฌ์คํธ์ ๋ง์ง๋ง ์์์ ๊ตํํ๋ค. ๊ตฌํ ์์ฌ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ๋ค. (min ์ ๋ ฌ) for i=0 to n: a[i]๋ถํฐ a[n-1]๊น์ง ์ฐจ๋ก๋ก ๋น๊ตํ์ฌ ์ต์๊ฐ์ด ์๋ a[j]๋ฅผ ์ฐพ๋๋ค. a[i]์ a[j]๋ฅผ ๋ฐ๊พผ๋ค. (max ์ ๋ ฌ) for i=0 to n: a[0]๋ถํฐ a[n-i-1]๊น์ง ์ฐจ๋ก๋ก ๋น๊ตํ์ฌ ์ต๋๊ฐ์ด ์๋ ..
๊ทธ๋ํ ์ฉ๋ ์ฉ์ด ์ ๋ฆฌ ๊ธฐ๋ณธ ์ฌํ ๊ตฌํ ์ธ์ ํ๋ ฌ ์ธ์ ๋ฆฌ์คํธ ๋น๊ต ์ฐ์ฐ ๋ถ๋ฅ ๋ฐฉํฅ์ฑ์ ๋ฐ๋ฅธ ๋ถ๋ฅ ์ฐ๊ฒฐ์ ๋ฐ๋ฅธ ๋ถ๋ฅ ์ฌ์ดํด์ ๋ฐ๋ฅธ ๋ถ๋ฅ ํน์ํ ๊ทธ๋ํ ํ์ ๋์ถ๋ ๋ฌธ์ ๋ค ๊ด๋ จ ์๊ณ ๋ฆฌ์ฆ ์ฐธ๊ณ ๊ทธ๋ํ ๊ทธ๋ํ๋ '๋ ธ๋'์ ๋ ธ๋๋ฅผ ์ฐ๊ฒฐํ๋ '๊ฐ์ '์ผ๋ก ์ด๋ฃจ์ด์ง ์๋ฃ๊ตฌ์กฐ์ด๋ค. ์ง๊ธ๊น์ง์ ์ดํด๋ณธ ์๋ฃ๊ตฌ์กฐ๋ค(๋ฆฌ์คํธ, ์คํ, ํ ๋ฑ)๊ณผ๋ ๋ฌ๋ฆฌ ๊ทธ๋ํ๋ ๋น์ ํ ์๋ฃ๊ตฌ์กฐ ์ด๋ค. ์ฉ๋ ๊ทธ๋ํ๋ ์ผ์์ํ์์ ์ฐ๊ฒฐ๋์ด์๋ ๊ฐ์ฒด ๊ฐ์ ๊ด๊ณ๋ฅผ ํํํ ๋ ์ฌ์ฉ๋๋ค. ์๋ก ์ง๋๋ ์งํ์ฒ ๋ ธ์ ๋, ์ ๊ธฐํ๋ก, ๋๋ก ๋ฑ์ ๋ค ์ ์๋ค. ๋ํ ์ปดํจํฐ ์ธ๋ถ์ ๊ณต์์๋ ํต์ ๋คํธ์ํฌ ๋ถ์ผ์์๋ ์ฐ์ด๋ฉฐ, ๋ ผ๋ฆฌํ๋ก๋ฅผ ์ค๊ณํ๊ณ ๋ถ์ํ๋ ๋ฐ์๋ ์ฌ์ฉ๋๋ค. ์ต๊ทผ์๋ ์น์ฌ์ดํธ์ ๋งํฌ ์ฐ๊ฒฐ(Page Rank)์ด๋ SNS ์์ ์น๊ตฌ๊ด๊ณ๋ฅผ ํํํ๋ ๋ฐ์๋ ์ฌ์ฉ๋..
์ฒซ๋ฒ์งธ ๊ณผ์ ์ด๋ค. ์๊ฐ ๋ณต์ก๋๊ฐ f(n)์ธ ์๊ณ ๋ฆฌ์ฆ์ ์์์๊ฐ์ด 1 nanosecond == 10^(-9) second ์ด๋ผ๊ณ ํ ๋, ์ผ์ชฝ์ ํ์๋ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ณ ์๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด ์์ชฝ์ ์๊ฐ ๋ด์ ์๊ณ ๋ฆฌ์ฆ์ด ์๋ฃ๋๋ ค๋ฉด ์ต๋๋ก ์ด๋ค N๊น์ง ๊ณ์ฐํ ์ ์์์ง ์์๋ณด์. ๋ํ๋ก ํ๋๋ฅผ ๊ณ์ฐํด๋ณด๋ฉด 1sec๋ 10^(9) nanosec ์ด๋ฏ๋ก n^2์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ๋ ์๊ณ ๋ฆฌ์ฆ์์ n^2 = 10^(9) ๋ก ๋๊ณ ํ๋ฉด 1sec ๋ง์ ๊ณ์ฐ๋ ์ ์๋ n ๊ฐ์ด ๋์จ๋ค. n ๊ฐ์ ๋ชจ๋ ์ ์๋ก ๊ฐ์ ํ์๋ค.
์๊ฐ ์ ํ ๋ฉ๋ชจ๋ฆฌ ์ ํ ์ ์ถ ์ ๋ต ๋ง์ ์ฌ๋ ์ ๋ต ๋น์จ 1 ์ด 256 MB 16367 3904 2522 25.125% ๋ฌธ์ ํ์คํ ๊ทธ๋จ์ ์ง์ฌ๊ฐํ ์ฌ๋ฌ ๊ฐ๊ฐ ์๋์ชฝ์ผ๋ก ์ ๋ ฌ๋์ด ์๋ ๋ํ์ด๋ค. ๊ฐ ์ง์ฌ๊ฐํ์ ๊ฐ์ ๋๋น๋ฅผ ๊ฐ์ง๊ณ ์์ง๋ง, ๋์ด๋ ์๋ก ๋ค๋ฅผ ์๋ ์๋ค. ์๋ฅผ ๋ค์ด, ์ผ์ชฝ ๊ทธ๋ฆผ์ ๋์ด๊ฐ 2, 1, 4, 5, 1, 3, 3์ด๊ณ ๋๋น๊ฐ 1์ธ ์ง์ฌ๊ฐํ์ผ๋ก ์ด๋ฃจ์ด์ง ํ์คํ ๊ทธ๋จ์ด๋ค. ํ์คํ ๊ทธ๋จ์์ ๊ฐ์ฅ ๋์ด๊ฐ ํฐ ์ง์ฌ๊ฐํ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ ๋ ฅ์ ํ ์คํธ ์ผ์ด์ค ์ฌ๋ฌ ๊ฐ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ์ง์ฌ๊ฐํ์ ์ n์ด ๊ฐ์ฅ ์ฒ์์ผ๋ก ์ฃผ์ด์ง๋ค. (1 ≤ n ≤ 100,000) ๊ทธ ๋ค์ n๊ฐ์ ์ ์ h1, ..., hn (0 ≤ hi ≤ 1,000,000,..
7.2 ๋ฌธ์ : ์ฟผ๋ ํธ๋ฆฌ ๋ค์ง๊ธฐ (๋ฌธ์ ID:QUADTREE, ๋์ด๋: ํ) ๋๋์ ์ขํ ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ ์์ ์์ถํด ์ ์ฅํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ฌ๋ฌ ๊ธฐ๋ฒ ์ค ์ฟผ๋ ํธ๋ฆฌ๋ ๊ฒ์ด ์์ต๋๋ค. ์ฃผ์ด์ง ๊ณต๊ฐ์ ํญ์ 4๊ฐ๋ก ๋ถํ ํด ์ฌ๊ท์ ์ผ๋ก ํํํ๊ธฐ ๋๋ฌธ์ ์ฟผ๋ ํธ๋ฆฌ๋ผ๋ ์ด๋ฆ์ด ๋ถ์๋๋ฐ, ์ด์ ์ ๋ช ํ ์ฌ์ฉ์ฒ ์ค ํ๋๋ ๊ฒ์ ์๊ณผ ํฐ ์๋ฐ์ ์๋ ํ๋ฐฑ ๊ทธ๋ฆผ์ ์์ถํด ํํํ๋ ๊ฒ์ ๋๋ค. ์ฟผ๋ ํธ๋ฆฌ๋ 2^N*2^N ํฌ๊ธฐ์ ํ๋ฐฑ ๊ทธ๋ฆผ์ ๋ค์๊ณผ ๊ฐ์ ๊ณผ์ ์ ๊ฑฐ์ณ ๋ฌธ์์ด๋ก ์์ถํฉ๋๋ค. ์ด ๊ทธ๋ฆผ์ ๋ชจ๋ ํฝ์ ์ด ๊ฒ์ ์์ผ ๊ฒฝ์ฐ ์ด ๊ทธ๋ฆผ์ ์ฟผ๋ ํธ๋ฆฌ ์์ถ ๊ฒฐ๊ณผ๋ ๊ทธ๋ฆผ์ ํฌ๊ธฐ์ ๊ด๊ณ์์ด b๊ฐ ๋ฉ๋๋ค. ์ด ๊ทธ๋ฆผ์ ๋ชจ๋ ํฝ์ ์ด ํฐ ์์ผ ๊ฒฝ์ฐ ์ด ๊ทธ๋ฆผ์ ์ฟผ๋ ํธ๋ฆฌ ์์ถ ๊ฒฐ๊ณผ๋ ๊ทธ๋ฆผ์ ํฌ๊ธฐ์ ๊ด๊ณ์์ด w๊ฐ ๋ฉ๋๋ค. ๋ชจ๋ ํฝ์ ์ด ๊ฐ์ ์์ด ..
6.8 ๋ฌธ์ : ์๊ณ ๋ง์ถ๊ธฐ (๋ฌธ์ ID: CLOCKSYNC, ๋์ด๋: ์ค) ๋ฌธ์ 4x4 ๊ฒฉ์ ํํ๋ก ๋ฐฐ์น๋ ์ด์ฌ์ฏ ๊ฐ์ ์๊ณ๊ฐ ์์ต๋๋ค. ์ด ์๊ณ๋ค์ ๋ชจ๋ 12์, 3์, 6์, ํน์ 9์๋ฅผ ๊ฐ๋ฆฌํค๊ณ ์๋๋ฐ, ์ด ์๊ณ๋ค์ด ๋ชจ๋ 12์๋ฅผ ๊ฐ๋ฆฌํค๋๋ก ๋ฐ๊พธ๊ณ ์ถ์ต๋๋ค. ์๊ณ์ ์๊ฐ์ ์กฐ์ํ๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ด ๊ฐ์ ์ค์์น๋ค์ ์กฐ์ํ๋ ๊ฒ์ผ๋ก, ๊ฐ ์ค์์น๋ค์ ๋ชจ๋ ์ ๊ฒ๋ ์ธ ๊ฐ์์ ๋ง๊ฒ๋ ๋ค์ฏ ๊ฐ์ ์๊ณ์ ์ฐ๊ฒฐ๋์ด ์์ต๋๋ค. ํ ์ค์์น๋ฅผ ๋๋ฅผ ๋๋ง๋ค, ํด๋น ์ค์์น์ ์ฐ๊ฒฐ๋ ์๊ณ๋ค์ ์๊ฐ์ 3์๊ฐ์ฉ ์์ผ๋ก ์์ง์ ๋๋ค. (12์์ผ๋๋ 3์๋ก, 3์=>6์, 6์ =>9์, 9์=>12์) ์ค์์น๋ค๊ณผ ๊ทธ๋ค์ด ์ฐ๊ฒฐ๋ ์๊ณ๋ค์ ๋ชฉ๋ก์ด ์ฃผ์ด์ง๊ณ ํ์ฌ ๊ฐ๋ฆฌํค๋ ์๊ฐ๋ค์ด ์ฃผ์ด์ก์ ๋ ๋ชจ๋ ์๊ณ๋ฅผ 12์๋ก ๋๋ฆฌ๊ธฐ ์ํด ์ต์ํ ..
Comment