λ¬Έμ μ€λͺ
μ£Όμ΄μ§ μ«μ μ€ 3κ°μ μλ₯Ό λνμ λ μμκ° λλ κ²½μ°μ κ°μλ₯Ό ꡬνλ €κ³ ν©λλ€. μ«μλ€μ΄ λ€μ΄μλ λ°°μ΄ numsκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, numsμ μλ μ«μλ€ μ€ μλ‘ λ€λ₯Έ 3κ°λ₯Ό κ³¨λΌ λνμ λ μμκ° λλ κ²½μ°μ κ°μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
μ ν 쑰건
- numsμ λ€μ΄μλ μ«μμ κ°μλ 3κ° μ΄μ 50κ° μ΄νμ λλ€.
- numsμ κ° μμλ 1 μ΄μ 1,000 μ΄νμ μμ°μμ΄λ©°, μ€λ³΅λ μ«μκ° λ€μ΄μμ§ μμ΅λλ€.
μ μΆλ ₯ μ
nums | result |
[1,2,3,4] | 1 |
[1,2,7,6,4] | 4 |
λ΄ λ¬Έμ νμ΄
import Foundation
func solution(_ nums:[Int]) -> Int {
var sum = [Int]()
var count = 0
for i in 0..<nums.count-2 {
for j in i+1..<nums.count {
for k in j+1..<nums.count {
sum.append(nums[i] + nums[j] + nums[k])
}
}
}
for i in 0..<sum.count {
for j in 2..<sum[i] {
if sum[i] % j == 0 {
break
}
else if j == sum[i]-1 && sum[i] % j != 0 {
count += 1
}
}
}
return count
}
- 3μ€ forλ¬Έμ μ¬μ©νμ¬ λͺ¨λ 3κ° μμ ν©μ ꡬνκ³ , sum λ°°μ΄μ append ν΄μ£Όμλ€.
- 2μ€ forλ¬Έ μ΄μ©νμ¬ μμμΈ μμ κ°μλ₯Ό ꡬν΄μ£Όμλ€.
- 2λΆν° ν΄λΉ μμ μ κΉμ§ λλ 보며 λκΉμ§ λλ μ§μ§ μμ μλ μμλ‘ νλ³νμ¬ countμ κ°μλ₯Ό λν΄μ£Όμλ€.
π‘ νΌλλ°±
- μ½λκ° κΈΈμ΄μ§λ μμ ꡬνλ λΆλΆμ λ°λ‘ ν¨μλ‘ λ§λ€μ΄μ€¬μ΄λ μ’μ κ² κ°λ€.
- μ΄μ μ μμ ꡬνλ λ¬Έμ λ₯Ό νμλ κΈ°μ΅μ΄ μμ΄ ν° κ³ λ―Ό μμ΄ κ΅¬νν μ μμλ€.
λ¬Έμ
https://programmers.co.kr/learn/courses/30/lessons/12977
'3οΈβ£ Swift > Problem Solving' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Swift Algorithm] λͺ¨μκ³ μ¬ Programmers(Lv.1) (0) | 2021.06.18 |
---|---|
[Swift Algorithm] Kλ²μ§Έ μ Programmers(Lv.1) (0) | 2021.06.18 |
[Swift Algorithm] λ‘λμ μ΅κ³ μμμ μ΅μ μμ Programmers(Lv.1) (0) | 2021.06.18 |
[Swift Algorithm] 체μ‘볡 Programmers(Lv.1) (0) | 2021.06.18 |
[Swift Algorithm] μμ λνκΈ° Programmers(Lv.1) (0) | 2021.06.18 |
λκΈ