티스토리 뷰
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/70128
내 풀이
import Foundation
func solution(_ a:[Int], _ b:[Int]) -> Int {
var saveArr: [Int] = []
for (idx, num) in b.enumerated() {
saveArr.append(num * a[idx])
}
let result: Int = saveArr.reduce(0, { $0 + $1})
return result
}
solution([1,2,3,4], [-3,-1,0,2])
다른사람의 풀이
func solution(_ a:[Int], _ b:[Int]) -> Int {
let result = zip(a, b).map { $0 * $1 }.reduce(0) { $0 + $1 }
return result
}
배운것
methods(_:)
두 개의 시퀀스를 사용해 시퀀스 쌍을 만듭니다.
예제
// 두 시퀀스의 length가 같을경우
let words = ["one", "two", "three", "four"]
let numbers = 1...4
for (word, number) in zip(words, numbers) {
print("\(word): \(number)")
}
// Prints "one: 1"
// Prints "two: 2
// Prints "three: 3"
// Prints "four: 4"
// 두 시퀀스의 length중 짧은쪽까지만 합쳐짐.
let naturalNumbers = 1...Int.max
let zipped = Array(zip(words, naturalNumbers))
// zipped == [("one", 1), ("two", 2), ("three", 3), ("four", 4)]
728x90
'알고리즘' 카테고리의 다른 글
[Swift 알고리즘] - 2016년 (Programmers) (0) | 2022.10.12 |
---|---|
[Swift 알고리즘] - 자릿수 더하기 (Programmers) (0) | 2022.10.11 |
[Swift 알고리즘] - 문자열을 정수로 바꾸기 (Programmers) (0) | 2022.10.04 |
[Swift 알고리즘] - 알수없는 숫자 더하기 (Programmers) (1) | 2022.10.01 |
[Swift 알고리즘] - Squares of a Sorted Array (Leetcode) (0) | 2022.05.20 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Swift ModernRIBs
- Swift Error Handling
- Swift final
- Swift init
- Swift
- swift programmers
- Class
- Swift joined()
- Swift joined
- Swift 내림차순
- RIBs tutorial
- removeLast()
- 2023년 회고
- iOS error
- Swift 알고리즘
- CS 네트워크
- Swift Leetcode
- 원티드 프리온보딩
- swift protocol
- Swift 프로퍼티
- Swift RIBs
- swift property
- Swift 프로그래머스
- Swift inout
- Combine: Asynchronous Programming with Swift
- RTCCameraVideoCapturer
- ios
- swift 고차함수
- swift reduce
- swift (programmers)
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함