문제
내 정답 코드
import Foundation
func solution(_ arr:[Int]) -> [Int] {
var arr = arr
let count = arr.count
var two = 1
while(true) {
if count <= two {
let zeroCount = two - count
(0..<zeroCount).map { _ in arr.append(0) }
break
}
two *= 2
}
return arr
}
#
1. 먼저 무한 반복문을 돌리고 2를 계속 곱한다.
2. 2의 거듭 제곱과 배열의 개수를 비교하면서 개수가 2의 거듭제곱 값보다 작거나 같아진다면
3. 비는 공간만큼 0을 채워 반복문을 탈출하고 반환한다.
배운 기술
'프로그래머스 (Swift) > 기초' 카테고리의 다른 글
[Day20-3] 문자열 묶기 (0) | 2024.05.11 |
---|---|
[Day20-2] 배열 비교하기 (0) | 2024.05.11 |
[Day19-5] 무작위로 K개의 수 뽑기 (0) | 2024.05.04 |
[Day19-4] 배열 만들기 6 (0) | 2024.05.04 |
[Day19-3] 빈 배열에 추가, 삭제하기 (0) | 2024.05.04 |