Search
Duplicate
🎢

원소들의 곱과 합

Created
2023/10/24 10:32
Tags

원소들의 곱과 합

정수가 담긴 리스트 num_list가 주어질 때, 모든 원소들의 곱이 모든 원소들의 합의 제곱보다 작으면 1을 크면 0을 return하도록 solution 함수를 완성해주세요.
func solution(_ num_list: [Int]) -> Int { return num_list.reduce(1, *) < Int(pow(Double(num_list.reduce(0, +)), 1)) ? 1 : 0 }
Swift
복사

코드 까보기

num_list.reduce(1, *)
Swift
복사
reduce 메서드는 컬렉션의 요소들을 결합하여 단일 값을 생성한다. 이 경우, 모든 요소를 곱하기 위해 사용된다. 초기 값이 1이 사용되고, 두 번째 인자로 곱셈 연산자 ‘*’ 가 전달된다.
함수는 리스트의 모든 요소를 곱한 결과를 반환한다.
Int(pow(Double(num_list.reduce(0, +)), 2))
Swift
복사
num_list.reduce(0, +)
Swift
복사
먼저 리스트 내의 모든 숫자의 합이 계산된다
Double(num_list.reduce(0, +))
Swift
복사
그 결과를 Double로 캐스팅
pow 함수는 제곱을 계산할 때, 두 매개변수 모두 Double 형이어야 하기 때문에 Double로 캐스팅해준다.
pow(Double(num_list.reduce(0, +)), 2)
Swift
복사
pow 함수를 사용하여 제곱
Int(pow(Double(num_list.reduce(0, +)), 2)) ? 1 : 0
Swift
복사
Int로 캐스팅하여 정수 형태로