TIL/알고리즘 공부
프로그래머스 Lv. 1 Swift 알고리즘 - 삼총사
여의도사노비
2023. 1. 1. 14:45
728x90
각 배열에 있는 3가지 숫자의 합이 0이 되는 경우를 찾아주면 되는 문제이다.
입력받은 number의 원소들을 하나씩 차례대로 골라 전부 더해줬을 때 0이 되면 count를 1 추가해주면 되는 간단한 문제이다.
이 문제를 풀면서 생각한 논리적 흐름
- number array에 있는 값들을 1번째 원소 + 2번째 원소 + 3번째 원소로 나누어서 더해준다.
- 각 더한 값들이 0이 될 경우 count를 1 추가해준다.
- i, j, k와 같은 인덱스들의 범위가 초과하지 않도록 신경써준다.
* 코드
import Foundation
func solution(_ number:[Int]) -> Int {
var tempValue = 0
var count = 0
for i in 0...number.count-3 {
for j in i+1...number.count-2 {
for k in j+1...number.count-1 {
tempValue = number[i] + number[j] + number[k]
if tempValue == 0 {
count += 1
}
}
}
}
return count
}
정리(Today I Learned)
- 없음