[νλ‘κ·Έλλ¨Έμ€ LV.1] μΌμ΄μ¬
νλ‘κ·Έλλ¨Έμ€ LV.1 λͺ¨μ
μΌμ΄μ¬
λ¬Έμ μ€λͺ
νκ΅μ€νκ΅μ λ€λλ νμλ€μ κ°μ μ μ λ²νΈλ₯Ό κ°κ³ μμ΅λλ€. μ΄ νκ΅ νμ 3λͺ μ μ μ λ²νΈλ₯Ό λνμ λ 0μ΄ λλ©΄ 3λͺ μ νμμ μΌμ΄μ¬λΌκ³ ν©λλ€. μλ₯Ό λ€μ΄, 5λͺ μ νμμ΄ μκ³ , κ°κ°μ μ μ λ²νΈκ° μμλλ‘ -2, 3, 0, 2, -5μΌ λ, 첫 λ²μ§Έ, μΈ λ²μ§Έ, λ€ λ²μ§Έ νμμ μ μ λ²νΈλ₯Ό λνλ©΄ 0μ΄λ―λ‘ μΈ νμμ μΌμ΄μ¬μ λλ€.
λν, λ λ²μ§Έ, λ€ λ²μ§Έ, λ€μ― λ²μ§Έ νμμ μ μ λ²νΈλ₯Ό λν΄λ 0μ΄λ―λ‘ μΈ νμλ μΌμ΄μ¬μ λλ€.
λ°λΌμ μ΄ κ²½μ° νκ΅μ€νκ΅μμλ λ κ°μ§ λ°©λ²μΌλ‘ μΌμ΄μ¬λ₯Ό λ§λ€ μ μμ΅λλ€.
νκ΅μ€νκ΅ νμλ€μ λ²νΈλ₯Ό λνλ΄λ μ μ λ°°μ΄ numberκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, νμλ€ μ€ μΌμ΄μ¬λ₯Ό λ§λ€ μ μλ λ°©λ²μ μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±νμΈμ.
μ ν μ¬ν
- 3 ≤ numberμ κΈΈμ΄ ≤ 13
- -1,000 ≤ numberμ κ° μμ ≤ 1,000
- μλ‘ λ€λ₯Έ νμμ μ μ λ²νΈκ° κ°μ μ μμ΅λλ€.
μ μΆλ ₯ μ
| number | result |
| [-2, 3, 0, 2, -5] | 2 |
| [-3, -2, -1, 0, 1, 2, 3] | 5 |
| [-1, 1, -1, 1] | 0 |
μ μΆλ ₯ μ μ€λͺ
μ μΆλ ₯ μ #1
- λ¬Έμ μμμ κ°μ΅λλ€.
μ μΆλ ₯ μ #2
- νμλ€μ μ μ λ²νΈ μ (-3, 0, 3), (-2, 0, 2), (-1, 0, 1), (-2, -1, 3), (-3, 1, 2) μ΄ μΌμ΄μ¬κ° λ μ μμΌλ―λ‘, 5λ₯Ό return ν©λλ€.
μ μΆλ ₯ μ #3
- μΌμ΄μ¬κ° λ μ μλ λ°©λ²μ΄ μμ΅λλ€.
μ μΆ
import Foundation
func solution(_ number:[Int]) -> Int {
var answer = 0
for i in 0..<number.count-2{
for j in i+1..<number.count-1{
for k in j+1..<number.count{
if number[i] + number[j] + number[k] == 0{
answer += 1
}
}
}
}
return answer
}
λ°°μ΄ numberμμ μμλλ‘ 3κ°μ μμλ€μ λν΄ ν©μ΄ 0μ΄λΌλ©΄, answer λ³μλ₯Ό 1 μ¦κ°μν¨λ€.