๐Ÿ““ STUDY/FASTCAMPUS

ํŒจ์ŠคํŠธ์บ ํผ์Šค ์ฑŒ๋ฆฐ์ง€ 14์ผ์ฐจ

JuneBee 2021. 11. 14. 19:27
728x90
๋ฐ˜์‘ํ˜•

์‹œ์ฒญ ๋‚ ์งœ : 11/14/2021
์‹œ์ฒญ ๊ฐ•์˜ : ์ด๋ถ„ ํƒ์ƒ‰

์ด๋ถ„ ํƒ์ƒ‰ (Binary Search)

์ •๋ ฌ์ด ๋ณด์žฅ๋˜๋Š” ๋ฐฐ์—ด์—์„œ ๊ธฐ์ค€ x๋ฅผ ๊ฐ€์ง€๊ณ  ๋ฒ”์œ„๋ฅผ "์ด๋ถ„"ํ•˜๋ฉด์„œ ํƒ์ƒ‰

Search for...

  1. x ๊ฐ€ ์กด์žฌํ•˜๋Š”๊ฐ€
  2. x์ดํ•˜, ๋ฏธ๋งŒ, ์ดˆ๊ณผ์˜ ์›์†Œ๋Š” ๋ช‡ ๊ฐœ๊ฐ€ ์žˆ๋Š”๊ฐ€
  3. x ๋ž‘ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์›์†Œ๋Š” ๋ฌด์—‡์ธ๊ฐ€

์˜ค๋ฆ„ ์ฐจ์ˆœ ์ •๋ ฌ๋œ ๋ฐฐ์—ด์˜ ํŠน์„ฑ

  1. ์ž„์˜์˜ M๋ฒˆ ์ธ๋ฑ์Šค์— ์žˆ๋Š” A [M] ์ด X ๋ณด๋‹ค ํฌ๋‹ค๋ฉด, A [M... N] ์€ ์ „๋ถ€ x ๋ณด๋‹ค ํฌ๋‹ค
  2. ์ž„์˜์˜ M๋ฒˆ ์ธ๋ฑ์Šค์— ์žˆ๋Š” A [M] ์ด X ๋ณด๋‹ค ์ž‘๋‹ค๋ฉด, A [M... N] ์€ ์ „๋ถ€ x ๋ณด๋‹ค ์ž‘๋‹ค
  3. ์œ„ ์กฐ๊ฑด์€ ์ •๋ ฌ์ด ๋œ ์ƒํƒœ์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

Example

x = 38

10 15 20 35 40
  1. L = 1, R = 5๋กœ ์žก์Œ
  • L : ํƒ์ƒ‰ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ๋ฒ”์œ„์˜ ์™ผ์ชฝ ๋ ์ธ๋ฑ์Šค
  • R : ํƒ์ƒ‰ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋Š” ๋ฒ”์œ„์˜ ์˜ค๋ฅธ์ชฝ ์ธ๋ฑ์Šค
  1. x์™€ L R ๋น„๊ต ํ›„ ๋ฒ”์œ„ ์žฌ์„ค์ •
    L = 4 R = 5
  2. x ์™€ L R ๋น„๊ต ํ›„ ๋ฒ”์œ„ ์žฌ์„ค์ •
    L = 5, R = 5

-> ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค!

์ •๋ฆฌ

A [M]๊ณผ x๋ฅผ ํ•œ๋ฒˆ ๋น„๊ตํ•  ๋•Œ๋งˆ๋‹ค [L, R] ๊ตฌ๊ฐ„์ด ์ ˆ๋ฐ˜์”ฉ ์ข์•„์ง„๋‹ค
์ฆ‰, ์ด ๋น„๊ต ํšŸ์ˆ˜๋Š” ๊ตฌ๊ฐ„์˜ ๋ณ€ํ™” ํšŸ์ˆ˜์ธ O(logN)๋งŒ์— ์›ํ•˜๋Š” ๊ฐ’์„ ํƒ์ƒ‰ํ•œ๋‹ค
๋งŒ์•ฝ, N = 10๋งŒ ์ด๋ฉด, log(10๋งŒ) == 16 ์ด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๊ต‰์žฅํžˆ ํšจ์œจ์ ์ธ ํƒ์ƒ‰์ด๋‹ค.

์ž์ฃผ ํ•˜๋Š” ์‹ค์ˆ˜

  1. ์ •๋ ฌ์„ ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ
  2. L, R, M, Result ๋ณ€์ˆ˜์˜ ์ •์˜๋ฅผ ํ—ท๊ฐˆ๋ ค์„œ ๋ถ€๋“ฑํ˜ธ๋ฅผ ์ž˜๋ชป ์‚ฌ์šฉ
  3. L, R๋ฒ”์œ„๋ฅผ ์ž˜๋ชป ์„ค์ •ํ•˜๊ฑฐ๋‚˜ Result์˜ ์ดˆ๊ธฐ๊ฐ’์„ ์ž˜๋ชป ์„ค์ •

 

์—ฐ์Šต๋ฌธ์ œ

๋จน์„ ๊ฒƒ์ธ๊ฐ€ ๋จนํž ๊ฒƒ์ธ๊ฐ€ BOJ 7795
๋‘ ์šฉ์•ก BOJ 2470

 

ํŒจ์ŠคํŠธ์บ ํผ์Šค ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ ๋ฐ”๋กœ๊ฐ€๊ธฐ๐Ÿ‘‰ https://bit.ly/3FVdhDa

 

์ˆ˜๊ฐ•๋ฃŒ 100% ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ | ํŒจ์ŠคํŠธ์บ ํผ์Šค

๋”ฑ 5์ผ๊ฐ„ ์ง„ํ–‰๋˜๋Š” ํ™˜๊ธ‰์ฑŒ๋ฆฐ์ง€๋กœ ์ˆ˜๊ฐ•๋ฃŒ 100% ํ™˜๊ธ‰๋ฐ›์œผ์„ธ์š”! ๋” ๋Šฆ๊ธฐ์ „์— ์ž๊ธฐ๊ณ„๋ฐœ ๋ง‰์ฐจ ํƒ‘์Šน!

fastcampus.co.kr

๋ณธ ํฌ์ŠคํŒ…์€ ํŒจ์ŠคํŠธ์บ ํผ์Šค ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ ์ฐธ์—ฌ๋ฅผ ์œ„ํ•ด ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•