Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 프로그래머스 조건에 맞게 수열 변경하기 3
- 프로그래머스 배열 만들기1
- 프로그래머스 자동커밋
- 프로그래머스 문자열 정렬하기 (1)
- 프로그래머스 주사위 게임1
- 연산자
- 스페인어
- 스파르타 코딩클럽 내일배움캠프
- 프로그래머스 n번째 원소까지
- 프로그래머스 암호 해독
- continue
- 프로그래머스 n의 배수 고르기
- Break
- 조건에 맞게 수열 변경하기 3
- Error installing cocoapods
- 객체지향
- 문자열 붙여서 출력하기
- 프로그래머스 문자열 붙여서 출력하기
- cocoapods 설치 오류
- 프로그래머스 최댓값 만들기(2)
- 문자열 정렬하기 (1)
- ruby설치
- 스파르타코딩캠프
- 프로그래머스
- Til
- swift
- 주사위 게임1
- n번째 원소까지
- array
- 배열 만들기1
Archives
- Today
- Total
dev._.note
[프로그래머스] SWIFT 0단계 음양더하기 본문
음양 더하기
어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.
풀이
import Foundation
func solution(_ absolutes:[Int], _ signs:[Bool]) -> Int {
return zip(absolutes, signs).reduce(0) {
$0 + ( $1.1 ? $1.0 : -$1.0 )
}
}
1. zip함수를 통해 bool배열은 튜플로 변경 된 상태.
2. $1은 zip 함수로 만들어진 튜플인데 $1.1은 bool 값이 들어있고 $1.0은 int 값이기 때문에
삼항연산자로 $1.1이 참 일때는 $1.0의 int 값을 양수로 합산, $1.1이 거짓 일때는 $1.0의 int 값을 음수로 합산
3. $1은 reduce 후행클로저 단축인자로써 zip 함수로 만들어진 튜플이기 때문에 $1.1은 항상 Bool 값이고 $1.0은 항상 Int 값이여서 삼항연산자로 +, -를 결정.
'Dev > 코딩테스트' 카테고리의 다른 글
[프로그래머스] SWIFT 0단계 약수의 합 (0) | 2023.10.24 |
---|---|
[프로그래머스] SWIFT 0단계 자릿수 더하기 (0) | 2023.10.24 |
[프로그래머스] SWIFT 0단계 평균구하기 (0) | 2023.10.24 |
[프로그래머스] SWIFT 0단계 짝수와 홀수 (0) | 2023.10.24 |
[프로그래머스] SWIFT 0단계 배열의 평균값 (0) | 2023.10.24 |