์ด์งํ์(3)
-
[BOJ] #1939 - ์ค๋์ ํ
1939๋ฒ: ์ค๋์ ํ ์ฒซ์งธ ์ค์ N, M(1≤M≤100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ M๊ฐ์ ์ค์๋ ๋ค๋ฆฌ์ ๋ํ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ ์ธ ์ ์ A, B(1≤A, B≤N), C(1≤C≤1,000,000,000)๊ฐ ์ฃผ์ด์ง๋ค. ์ด๋ A๋ฒ ์ฌ๊ณผ B๋ฒ ์ฌ ์ฌ์ด์ ์ค๋์ ํ์ด C์ธ ๋ค๋ฆฌ www.acmicpc.net ** ๋ฌธ์ ์ ํ ์ด์ง ํ์ ** ํ์ด ๋ค๋ฆฌ์ ๊ฐ์ M์ ์ต๋ 100,000์ด๋ฉฐ, ์ค๋ ์ ํ C๋ ์ต๋ 1,000,000,000 ์ด์ง ํ์์ ์ด์ฉํ์ฌ O(M * logC)์ ๋ฌธ์ ํด๊ฒฐ 100,000 * 30 = 3,000,000 ํ๋ฒ์ ์ด๋์์ ์ฎ๊ธธ ์ ์๋ ๋ฌผํ๋ค์ ์ค๋์ ์ต๋๊ฐ์ ์ด์ง ํ์์ผ๋ก ์ฐพ์ ๋ฐ๋ณต์ ์ผ๋ก ์ค๋์ ์ค์ ํ์ฌ, ์ด๋์ด ๊ฐ๋ฅํ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ์ต๋ ์ค๋๊ณผ ์ต์ ์ค๋ ์ค์ ์ค๊ฐ๊ฐ์ ์ด๊ธฐํํ ๋ ์ต์ ์ค๋..
2021.06.16 -
[BOJ] #2110 - ๊ณต์ ๊ธฐ ์ค์น
2110๋ฒ: ๊ณต์ ๊ธฐ ์ค์น ์ฒซ์งธ ์ค์ ์ง์ ๊ฐ์ N (2 ≤ N ≤ 200,000)๊ณผ ๊ณต์ ๊ธฐ์ ๊ฐ์ C (2 ≤ C ≤ N)์ด ํ๋ ์ด์์ ๋น ์นธ์ ์ฌ์ด์ ๋๊ณ ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ์ง์ ์ขํ๋ฅผ ๋ํ๋ด๋ xi (0 ≤ xi ≤ 1,000,000,000)๊ฐ www.acmicpc.net ** ๋ฌธ์ ์ ํ ์ด์ง ํ์ ** ํ์ด ์ง์ ๊ฐ์ N์ ์ต๋ 200,0000์ด๋ฉด, ์ง์ ์ขํ X๋ ์ต๋ 1,000,000,000 ์ด์ง ํ์์ ์ด์ฉํ์ฌ O(N*logX) ์์ ๋ฌธ์ ํด๊ฒฐ 200,000 * 30 โ 6,000,000 ๊ฐ์ฅ ์ธ์ ํ ๋ ๊ณต์ ๊ธฐ ์ฌ์ด์ ์ต๋ Gap์ ์ด์ง ํ์์ผ๋ก ์ฐพ์ ๋ฐ๋ณต์ ์ผ๋ก Gap์ ์ค์ ํ๋ฉฐ, C๊ฐ ์ด์์ ๊ณต์ ๊ธฐ๋ฅผ ์ค์นํ ์ ์๋ ๊ฒฝ์ฐ๋ฅผ ์ฐพ์ ์ต๋ Gap = max / ์ต์ Gap =..
2021.06.16 -
[์๊ณ ๋ฆฌ์ฆ] #5_2 ์ด์ง ํ์
** ๋ํ์ ์ธ ํ์ ์๊ณ ๋ฆฌ์ฆ - ์์ฐจ ํ์, ํด์, ์ด์ง ํ์ ํธ๋ฆฌ, ์ด์ง ํ์, ... ** ์ด์ง ํ์(Binary Search) ํ์ํ ์๋ฃ๋ฅผ ๋๋ก ๋๋์ด ํด๋น ๋ฐ์ดํฐ๊ฐ ์์ ๋งํ ๊ณณ์ ํ์ํ๋ ๋ฐฉ๋ฒ ์์ฐจ ํ์๊ณผ ๋น๊ต ** ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ๊ณผ ์ด์ง ํ์ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ (Divide and Conquer) Divide: ๋ฌธ์ ๋ฅผ ํ๋ ๋๋ ๋ ์ด์์ผ๋ก ๋๋๋ค. Conquer: ๋๋ ์ง ๋ฌธ์ ๊ฐ ์ถฉ๋ถํ ์๊ณ , ํด๊ฒฐ์ด ๊ฐ๋ฅํ๋ค๋ฉด ํด๊ฒฐํ๊ณ , ๊ทธ๋ ์ง ์๋ค๋ฉด ๋ค์ ๋๋๋ค. ์ด์ง ํ์ Divide: ๋ฆฌ์คํธ๋ฅผ ๋ ๊ฐ์ ์๋ธ ๋ฆฌ์คํธ๋ก ๋๋๋ค. Comquer ๊ฒ์ํ ์ซ์ (search) > ์ค๊ฐ๊ฐ ์ด๋ฉด, ๋ท๋ถ๋ถ์ ์๋ธ ๋ฆฌ์คํธ์์ ๊ฒ์ํ ์ซ์๋ฅผ ์ฐพ๋๋ค. ๊ฒ์ํ ์ซ์ (search) < ์ค๊ฐ๊ฐ ์ด๋ฉด, ์๋ถ๋ถ์ ์๋ธ ๋ฆฌ์ค..
2021.06.02