import Foundation
func solution(_ numbers:[Int]) -> [Int] {
var stack: [Int] = []
var result: [Int] = Array(repeating: -1, count: numbers.count)
for i in 0..<numbers.count{
while !stack.isEmpty && numbers[stack.last!] < numbers[i]{
result[stack.popLast()!] = numbers[i]
}
stack.append(i)
}
return result
}
'프로그래머스 > Lv.2' 카테고리의 다른 글
[Swift] 다리를 지나는 트럭 (0) | 2023.04.29 |
---|---|
[Swift] 2개 이하로 다른 비트 (0) | 2023.04.29 |
[Swift] 모음사전 (0) | 2023.04.29 |
[Swift] 쿼드압축 후 개수세기 (0) | 2023.04.29 |
[Swift] 스킬트리 (0) | 2023.04.27 |