문제
https://www.acmicpc.net/problem/10828
소스코드
#include <stack>
#include <iostream>
#include <string>
using namespace std;
stack<int> st;
int main(void) {
int n;
cin >> n;
while (n > 0) {
n--;
string s;
cin >> s;
if (s == "push") {
int x;
cin >> x;
st.push(x);
}
else if (s == "pop") {
if (st.empty()) {
cout << -1 << endl;
}
else {
cout << st.top() << endl;
st.pop();
}
}
else if (s == "size") {
cout << st.size() << endl;
}
else if (s == "empty") {
cout << st.empty() << endl;
}
else if (s == "top") {
if (st.empty()) cout << -1 << endl;
else cout << st.top() << endl;
}
}
return 0;
}
stack<int> st를 while문 안에 넣으면 안됨!!
결과화면
'개인 공부 > 코딩테스트' 카테고리의 다른 글
[C++][프로그래머스][스택/큐] 탑 :: seoftware (0) | 2020.02.26 |
---|---|
[C++][백준 9012][스택] 괄호 :: seoftware (0) | 2020.02.21 |
[C++][백준 2178][BFS DFS] 미로 탐색 - BFS :: seoftware (0) | 2020.02.20 |
[C++][백준 2579][다이나믹 프로그래밍] 계단 오르기 :: seoftware (0) | 2020.02.20 |
[C++][백준 1463][다이나믹 프로그래밍] 1로 만들기 :: seoftware (0) | 2020.02.20 |
댓글