[c++] μ•Œκ³ λ¦¬μ¦˜ κ°œλ…κ³΅λΆ€ :: μž¬κ·€ν˜ΈμΆœ (완전탐색)

μž¬κ·€ν˜ΈμΆœ

 μž¬κ·€ν•¨μˆ˜λž€ ν•¨μˆ˜ λ‚΄μ—μ„œ 자기 μžμ‹ μ„ λ‹€μ‹œ ν˜ΈμΆœν•˜λŠ” ν•¨μˆ˜μ΄λ‹€. ν”„λ‘œκ·Έλž˜λ°ν•  λ•Œ λ°˜λ³΅λ˜λŠ” μž‘μ—…λ“€μ΄ λŒ€ν•΄μ„œλŠ” λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•˜κ±°λ‚˜ μž¬κ·€ν•¨μˆ˜λ₯Ό μ΄μš©ν•΄μ„œ ν‘œν˜„ν•œλ‹€.

 

 κΈ°μ € μ‚¬λ‘€λž€ 더 이상 μͺΌκ°œμ§€μ§€ μ•ŠλŠ” κ°€μž₯ μž‘μ€ μž‘μ—…μœΌλ‘œ, 이에 λ„λ‹¬ν–ˆμ„ λ•ŒλŠ” μž¬κ·€ν˜ΈμΆœμ„ λ©ˆμΆ”κ³  닡을 곧μž₯ λ°˜ν™˜ν•΄μ•Όν•œλ‹€. κΈ°μ € 사둀λ₯Ό μ •ν•  λ•ŒλŠ” λͺ¨λ“  μ‚¬λ‘€μ˜ 닡이 κΈ°μ € 사둀λ₯Ό μ΄μš©ν•˜μ—¬ 계산될 수 μžˆλ„λ‘ ν•΄μ•Όν•œλ‹€.

 

μ™„μ „ 탐색

(== Brute Force, Exhaustive search)

 μ™„전탐색은 μ»΄ν“¨ν„°μ˜ μ—°μ‚°λŠ₯λ ₯을 μ΄μš©ν•˜μ—¬ κ°€λŠ₯ν•œ 경우의 수λ₯Ό λͺ¨λ‘ λ‚˜μ—΄ν•˜λ©΄μ„œ 닡을 μ°ΎλŠ” μ•Œκ³ λ¦¬μ¦˜μ΄λ‹€. μž…λ ₯의 크기가 μž‘μ„ λ•Œ μ μ ˆν•œ μ•Œκ³ λ¦¬μ¦˜μ΄λ©° 더 λΉ λ₯Έ μ•Œκ³ λ¦¬μ¦˜μ˜ 기반이 λœλ‹€. 닡을 무쑰건 찾을 수 μžˆλ‹€λŠ” μž₯점이 μžˆμ§€λ§Œ, μ°ΎλŠ”λ°μ— 였랜 μ‹œκ°„μ΄ κ±Έλ¦°λ‹€λŠ” 단점이 μžˆλ‹€.

 

방법

  1. Brute Force
  2. λΉ„νŠΈ 마슀크
  3. μˆœμ—΄ / μ‘°ν•©
  4. λ°±νŠΈλž˜ν‚Ή
  5. BFS / DFS

[λΉ„νŠΈ 마슀크] : https://hini7.tistory.com/101

(μˆœμ—΄ / μ‘°ν•©)(λ°±νŠΈλž˜ν‚Ή)(BFS, DFS)

 

 

(문제 풀이 μΆ”κ°€)

λ°˜μ‘ν˜•