Algorithm/백준
[BOJ] (Swift) 10845 - 큐
Ekko0701
2022. 8. 1. 17:48
10845번: 큐
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
문제 요약
- 큐(Queue)를 만들어 보자.
풀이
import Foundation
var queue: [Int] = []
func push(_ x: Int) {
queue.append(x)
}
func pop() -> Int {
if queue.isEmpty {
return -1
} else {
return queue.removeFirst()
}
}
func size() -> Int {
return queue.count
}
func empty() -> Int {
return queue.isEmpty ? 1 : 0
}
func front() -> Int {
return queue.first ?? -1
}
func back() -> Int {
return queue.last ?? -1
}
var N = Int(readLine()!)!
for _ in 0..<N {
let command = readLine()!.split(separator: " ")
switch command[0] {
case "push":
push(Int(command[1])!)
case "pop":
print(pop())
break
case "size":
print(size())
break
case "empty":
print(empty())
break
case "front":
print(front())
break
case "back":
print(back())
break
default:
break
}
}