반응형
https://www.acmicpc.net/problem/2161
import Foundation
public struct Queue<T> {
fileprivate var array = [T]()
public var isEmpty: Bool {
return array.isEmpty
}
public var count: Int {
return array.count
}
public mutating func enquque(_ element: T) {
array.append(element)
}
public mutating func dequeue() -> T? {
if isEmpty {
return nil
} else {
return array.removeFirst()
}
}
public var front: T? {
return array.first
}
}
var queue = Queue<Int>()
let n = Int(readLine()!)!
for i in 1...n {
queue.enquque(i)
}
var result:[Int] = []
while queue.count > 1 {
result.append(queue.dequeue()!)
queue.enquque(queue.dequeue()!)
}
result.append(queue.dequeue()!)
var str = ""
for n in result {
str += "\(n) "
}
str.removeLast()
print(str)
반응형
'# 02 > Swift - CTP' 카테고리의 다른 글
[Swift] 백준! 2635번 - 수 이어가기 (0) | 2023.03.19 |
---|---|
[Swift] 백준! 5635번 - 생일 (0) | 2023.03.12 |
[Swift] 백준! 2822번 - 점수 계산 (0) | 2023.03.09 |
[Swift] 백준! 2167번 - 2차원 배열의 합 (0) | 2023.03.09 |
[Swift] 백준! 17478번 - 재귀함수가 뭔가요? (0) | 2023.03.07 |