VesselWheel

두 정수 사이의 합 with reduce 함수 본문

Coding Test Practice in Swift

두 정수 사이의 합 with reduce 함수

JasonYang 2023. 11. 21. 16:12

문제

풀이

 

func solution(_ a:Int, _ b:Int) -> Int64 {

// Int 탑입의 매개변수 a, b를 받아서 최소값(a, b)...최대값(a, b) 중에 reduce 함수 활용하여 첫 번째 인자는 초기값으로 0을 사용하고 두번째 인자는 + 연산자를 활용하여 모든 정수를 합한다. == a, b사이의 모든 정수의 합을 반환한다. 
    return Int64((min(a, b)...max(a, b)).reduce(0, +))
}

 

/* reduce 함수 란?

Swift의 reduce 메서드는 컬렉션의 모든 요소를 결합하여 단일 값을 생성하는 데 사용됩니다. 이 메서드는 두 개의 인수를 받습니다: 초기 결과 값과 결합을 수행하는 클로저입니다.

reduce 메서드의 기본적인 사용법은 다음과 같습니다:

swift
let numbers = [1, 2, 3, 4, 5]
let sum = numbers.reduce(0, { (result, number) in result + number })
// sum은 15입니다.

위의 예제에서 numbers 배열의 모든 요소를 더하는 예제입니다. reduce 메서드는 두 개의 인수를 받습니다. 첫 번째 인수는 초기 결과 값으로 0을 전달하였고, 두 번째 인수는 클로저입니다. 이 클로저는 현재까지의 결과 값(result)과 배열의 현재 요소(number)를 받아, 둘을 더한 값을 반환합니다. 이렇게 해서 배열의 모든 요소를 차례대로 더하게 되며, 그 결과는 sum에 할당됩니다.

이처럼 reduce는 배열의 모든 요소를 하나의 값으로 결합하는데 사용되며, 다양한 방식으로 사용될 수 있습니다.

*/

'Coding Test Practice in Swift' 카테고리의 다른 글

서울에서 김서방 찾기  (2) 2023.11.22
콜라츠 추측  (0) 2023.11.22
정수 내림차순으로 배치하기  (1) 2023.11.21
정수 제곱근 판별  (0) 2023.11.21
자연수 뒤집어 배열로 만들기  (1) 2023.11.14