쥐수의 공부노트
백준 10845번 큐 본문
728x90
정답 :
var array : [Int] = []
var head = 0
var tail = 0
func push(num : Int) {
array.append(num)
tail += 1
}
func pop() {
if head == tail {
print(-1)
} else {
print(array[head])
head += 1
}
}
func size() {
print(tail - head)
}
func front() {
print(array[head])
}
func back() {
print(array[tail-1])
}
let n = Int(readLine()!)!
for _ in 0..<n {
let input = readLine()!.split(separator: " ").map{String($0)}
if input[0] == "push" {
let num = Int(input[1])!
push(num: num)
}
if input[0] == "pop" {
pop()
}
if input[0] == "size" {
size()
}
if input[0] == "empty" {
if tail == head {
print(1)
} else {
print(0)
}
}
if input[0] == "front" {
if head == tail {
print(-1)
} else {
front()
}
}
if input[0] == "back" {
if head == tail {
print(-1)
} else {
back()
}
}
}
더보기
TMI : 스택에서 front() 와 back()이 추가되었다.
728x90