λ¬Έμ
νλ μ΄μμ μ°μλ μμμ ν©μΌλ‘ λνλΌ μ μλ μμ°μλ€μ΄ μλ€. λͺ κ°μ§ μμ°μμ μλ₯Ό λ€μ΄ 보면 λ€μκ³Ό κ°λ€.
- 3 : 3 (ν κ°μ§)
- 41 : 2+3+5+7+11+13 = 11+13+17 = 41 (μΈ κ°μ§)
- 53 : 5+7+11+13+17 = 53 (λ κ°μ§)
νμ§λ§ μ°μλ μμμ ν©μΌλ‘ λνλΌ μ μλ μμ°μλ€λ μλλ°, 20μ΄ κ·Έ μμ΄λ€. 7+13μ κ³μ°νλ©΄ 20μ΄ λκΈ°λ νλ 7κ³Ό 13μ΄ μ°μμ΄ μλκΈ°μ μ ν©ν ννμ΄ μλλ€. λν ν μμλ λ°λμ ν λ²λ§ λ§μ μ μ¬μ©λ μ μκΈ° λλ¬Έμ, 3+5+5+7κ³Ό κ°μ ννλ μ ν©νμ§ μλ€.
μμ°μκ° μ£Όμ΄μ‘μ λ, μ΄ μμ°μλ₯Ό μ°μλ μμμ ν©μΌλ‘ λνλΌ μ μλ κ²½μ°μ μλ₯Ό ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ μμ°μ Nμ΄ μ£Όμ΄μ§λ€. (1 ≤ N ≤ 4,000,000)
μΆλ ₯
첫째 μ€μ μμ°μ Nμ μ°μλ μμμ ν©μΌλ‘ λνλΌ μ μλ κ²½μ°μ μλ₯Ό μΆλ ₯νλ€.
ν΄κ²° λ°©λ²
μ΄μ λ¬Έμ μλ 1806. λΆλΆ ν© (ν΄λ¦) λ¬Έμ μ κ±°μ λμΌνλ€. μ’ λ¬λΌμ§ μ μ΄ μλ€λ©΄ μ λ ₯ κ°λ³΄λ€ μμ μμλ₯Ό λ¨Όμ μ°ΎμμΌνλ€λ μ μ΄λ€.
1. μλΌν μ€μ 체
λ₯Ό νμ©νμ¬ μ
λ ₯ κ°λ³΄λ€ μμ μμλ₯Ό λͺ¨λ μ°Ύλλ€.
2. left
, right
λ₯Ό νμ©νμ¬ λΆλΆ ν©μ κ³μ°νλ€.
3. λ§μ½ λΆλΆ ν©μ΄ μ
λ ₯ κ°λ³΄λ€ μκ±°λ κ°μ κ²½μ° left
μ κ°μ λΆλΆ ν©μμ λΉΌμ£Όκ³ ν μΉΈ μ΄λνλ€.
4. 3λ²μμ λ§μ½ λΆλΆ ν©μ΄ μ λ ₯ κ°κ³Ό κ°μ κ²½μ°μλ μ΄λ₯Ό μΉ΄μ΄νΈ ν΄μ€λ€.
μ΄μ λ¬Έμ μ λ‘μ§μ κ±°μ μΌμΉνλ€. νλ²μ ν΅κ³Όνλ€. μλ¬ κ°μΌκ² λ€...
μ±κ³΅
'βοΈ μ½ν μ€λΉ > Two Pointer' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ν¬ν¬μΈν° / Kotlin] BOJ 1806 - λΆλΆ ν© (0) | 2021.12.26 |
---|---|
[ν¬ν¬μΈν° / Kotlin] BOJ 2470 - λ μ©μ‘ (0) | 2021.12.25 |
[ν¬ν¬μΈν° / Kotlin] BOJ 3273 - λ μμ ν© (0) | 2021.12.25 |