์์ ํ๋ก์ ํธ ๋น์ค์ด ๋๋ฌด ์ปธ๋์ง๋ผ ์ค๋๋ง์ ์๊ฐ์ด ๋์ ์ฝํ ๋ฌธ์ ๋ฅผ ํ์๋ค. ์๋ฃ๊ตฌ์กฐ ์ค์์ ์ด๋ถ ํ์ (Binary Search)์ ์ด์ฉํ ๋ฌธ์ ์ด๋ค. ์ผํ ๋ณด๋๊น ์ถ์ ์จ์ด ๋ฎ๋๋ฐ ๊ทธ๋๋ ์ด๋ก ์ ์๊ณ ๊ฐ๋ ๊ฒ ์๋๋ผ ์ง์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์ด ๋ฌธ์ ๋ฅผ ํ๊ณ ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ฒ ๋ค.
์ด๋ถ ํ์ (Binary Search)
์ด๋ถ ํ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ ์ต์, ์ต๋ ๊ฐ์ ์ ํด ๋๊ณ ๋ฐ์ผ๋ก ๋๋์ด ๊ฐ๋ฉฐ ์ค๊ฐ ๊ฐ์ ๊ฒ์ฌํ๋ฉฐ ํ์์ ํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
์๊ฐ ๋ณต์ก๋๋ก O(logN)์ ๊ฐ๊ณ ์๋ ํ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
https://programmers.co.kr/learn/courses/30/lessons/43238
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ ๊ตญ์ฌ์ฌ
n๋ช ์ด ์ ๊ตญ์ฌ์ฌ๋ฅผ ์ํด ์ค์ ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค. ๊ฐ ์ ๊ตญ์ฌ์ฌ๋์ ์๋ ์ฌ์ฌ๊ด๋ง๋ค ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ค๋ฆ ๋๋ค. ์ฒ์์ ๋ชจ๋ ์ฌ์ฌ๋๋ ๋น์ด์์ต๋๋ค. ํ ์ฌ์ฌ๋์์๋ ๋์์ ํ
programmers.co.kr
๋ฌธ์ ์ค๋ช
n๋ช ์ด ์ ๊ตญ์ฌ์ฌ๋ฅผ ์ํด ์ค์ ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค. ๊ฐ ์ ๊ตญ์ฌ์ฌ๋์ ์๋ ์ฌ์ฌ๊ด๋ง๋ค ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ค๋ฆ ๋๋ค.
์ฒ์์ ๋ชจ๋ ์ฌ์ฌ๋๋ ๋น์ด์์ต๋๋ค. ํ ์ฌ์ฌ๋์์๋ ๋์์ ํ ๋ช ๋ง ์ฌ์ฌ๋ฅผ ํ ์ ์์ต๋๋ค. ๊ฐ์ฅ ์์ ์ ์๋ ์ฌ๋์ ๋น์ด ์๋ ์ฌ์ฌ๋๋ก ๊ฐ์ ์ฌ์ฌ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค. ํ์ง๋ง ๋ ๋นจ๋ฆฌ ๋๋๋ ์ฌ์ฌ๋๊ฐ ์์ผ๋ฉด ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๊ทธ๊ณณ์ผ๋ก ๊ฐ์ ์ฌ์ฌ๋ฅผ ๋ฐ์ ์๋ ์์ต๋๋ค.
๋ชจ๋ ์ฌ๋์ด ์ฌ์ฌ๋ฅผ ๋ฐ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต์๋ก ํ๊ณ ์ถ์ต๋๋ค.
์ ๊ตญ์ฌ์ฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ฌ๋ ์ n, ๊ฐ ์ฌ์ฌ๊ด์ด ํ ๋ช ์ ์ฌ์ฌํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด ๋ด๊ธด ๋ฐฐ์ด times๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๋ชจ๋ ์ฌ๋์ด ์ฌ์ฌ๋ฅผ ๋ฐ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต์๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
- ์ ๊ตญ์ฌ์ฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ฌ๋์ 1๋ช ์ด์ 1,000,000,000๋ช ์ดํ์ ๋๋ค.
- ๊ฐ ์ฌ์ฌ๊ด์ด ํ ๋ช ์ ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ 1๋ถ ์ด์ 1,000,000,000๋ถ ์ดํ์ ๋๋ค.
- ์ฌ์ฌ๊ด์ 1๋ช ์ด์ 100,000๋ช ์ดํ์ ๋๋ค.
๋ฌธ์ ๋ฅผ ๋ณด์ํ๋ ๋ฐฐ์ด์ ๋จผ์ ์์ฐจ์ ์ผ๋ก ์ ๋ ฌํ๊ณ ์ต์, ์ต๋ ๊ฐ์ ์ ์ํ๋ ๊ฒ ์ฐ์ ์ผ ๊ฒ ๊ฐ๋ค.
๊ทธ ๋ค์ ์ด๋ถ ํ์ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ์ฌ ๋์ ๋น๊ต ํ ์ผ์นํ๋ ๊ฐ์ ๋ฐํํ๋ฉด ๋๋ค.
๋ ๋ฒจ 3์ด๋ผ ๊ธด์ฅ์ ์ข ํ๋๋ฐ ๋ง์ ๊ณต๋ถํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ๋ฉฐ ํธ๋ ๊ฐ๋จํ ํด๊ฒฐ๋์๋ ๊ฒ ๊ฐ๋ค. ๋ค์ํ๊ฒ ํธ๋ ค๊ณ ๋ ธ๋ ฅ์ ์ข ํด๋ด์ผ๊ฒ ๋ค.
'๐ Algorithm > ์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2022.06.08 ใLv.2 ๋ฌธ์์ด ์์ถใ (0) | 2022.06.08 |
---|---|
2022.05.31 ใLv.3 ๋์คํฌ ์ปจํธ๋กค๋ฌใ (0) | 2022.05.31 |
2022.05.18 ใLv.2 Heap ๋ ๋งต๊ฒใ (0) | 2022.05.18 |
2022.05.17 ใLv.2 ํ๋ฆฐํฐใ (0) | 2022.05.17 |
2022.05.16 ใLv.2 ์นดํซใ (0) | 2022.05.16 |