일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 이미지학습
- 카카오 2021
- fast.ai
- 카카오 2018
- Siwft
- 카카오
- Python
- ios 개발 시작
- 머신러닝
- coco 데이터셋
- 소수
- 데이터셋 만들기
- Kakao
- kakao 2018
- c언어
- SwiftUI
- 프로그래머스
- 문제
- swift
- 파이썬
- 날씨 앱
- 최솟값 만들기
- 프로그래머스 답
- roboflow
- supervisely
- 카카오 2020
- swift 배열
- swift 시작
- 스위프트
- 카카오 2019
Archives
- Today
- Total
잡초의 일지
[Swift] 프로그래머스 | 코딩테스트 연습 -> 연습문제 -> 최솟값 만들기 본문
728x90
반응형
SMALL
func solution(_ A:[Int], _ B:[Int]) -> Int
{
var ans = 0
let B = B.sorted() // 오름차순
let A = A.sorted(by: >) //내림차순
for i in 0..<A.count {
ans += A[i] * B[i]
}
return ans
}
sort() 와 sorted()
sort()는 배열 자체를 다시 정렬하는것이기 때문에 let으로 선언하면 안된다. (원본 배열이 바뀐다.)
sorted()는 정렬된 새로운 배열이라고 생각하면 된다. '배열'을 리턴해준다. 따라서 원본 배열은 바뀌지 않는다.
이렇게 해서 오름차순 정렬된 배열을 얻을 수 있다.
reverse() 와 reversed()
내림차순 정렬된 배열을 얻기 위해선 reverse()를 사용한다.
reverse()는 sort()와 마찬가지로 배열 자체를 다시 정렬하기 때문에 var로 선언해야 한다. (원본 배열이 바뀐다.)
reversed()는 바라던대로 sorted()처럼 움직이지 않는다.
아래의 공식문서를 읽어보니, 문자에서는 리버스 된 순서로 문자를 프린트 하는것 같다.
developer.apple.com/documentation/swift/array/1690025-reversed
그렇다면, 내림차순으로 정렬하기 위해선?
.sort(by: >) 나 .sorted(by: >)를 사용하면 된다.
728x90
반응형
LIST
'[코딩] 문제풀기 > Swift' 카테고리의 다른 글
[Swift] 프로그래머스 | 코딩테스트 연습 -> 탐욕법(Greedy) -> 큰 수 만들기 (0) | 2020.08.24 |
---|---|
[Swift] 프로그래머스 | 코딩테스트 연습 -> 연습문제 -> 올바른 괄호 (0) | 2020.07.28 |
[Swift] 프로그래머스 | 코딩테스트 연습 -> 연습문제 -> 피보나치 수 (0) | 2020.07.26 |
[Swift] 프로그래머스 | 코딩테스트 연습 -> Summer/Winter Coding(~2018) -> 소수 만들기 (0) | 2020.07.25 |
[Swift] 프로그래머스 | 코딩테스트 연습 -> 연습문제 -> N개의 최소공배수 (0) | 2020.07.25 |
Comments