반응형
문제
해설
런타임에러: 배열의 인덱스를 벗어나지 않게 예외처리 해준다.
코드
#include<iostream>
#include<deque>
#include<string>
using namespace std;
deque<int> q;
int main() {
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int n;
cin >> n;
int s;
string arr;
while (n != 0) {
cin >> arr;
if (arr == "push_front") {
cin >> s;
q.push_front(s);
}
else if (arr == "push_back") {
cin >> s;
q.push_back(s);
}
else if (arr == "pop_front") {
if (!q.empty()) {
cout << q.front() << '\n';
q.pop_front();
}
else cout << -1 << '\n';
}
else if (arr == "pop_back") {
if (!q.empty()) {
cout << q.back() << '\n';
q.pop_back();
}
else cout << -1 << '\n';
}
else if (arr == "size") cout << q.size() << '\n';
else if (arr == "empty") cout << q.empty() << '\n';
else if (arr == "front") {
if (!q.empty()) cout<<q.front()<<'\n';
else cout << -1 << '\n';
}
else if (arr == "back") {
if (!q.empty()) cout << q.back() << '\n';
else cout << -1 << '\n';
}
n--;
}
return 0;
}
반응형
'Development > Algorithm' 카테고리의 다른 글
[BOJ] 11279. 최대 힙 (0) | 2020.10.18 |
---|---|
[BOJ] 1927. 최소 힙 (0) | 2020.10.18 |
[BOJ] 10845. 큐 (0) | 2020.10.17 |
[BOJ] 10828. 스택 (0) | 2020.10.17 |
[BOJ] 10815. 숫자 카드 (0) | 2020.10.17 |