[백준/BOJ] 백준 10828번 : 스택
2020. 8. 24. 23:03ㆍ알고리즘 문제풀이
https://www.acmicpc.net/problem/10828
스택을 사용하여 문제를 해결했다.
코드
#include <iostream>
#include <algorithm>
#include <string>
#include <stack>
using namespace std;
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
int n;
string input_s;
int input_i;
stack<int> s;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> input_s;
if (input_s == "push")
{
cin >> input_i;
s.push(input_i);
}
else if (input_s == "pop")
{
if (s.empty()) //스택이 비어 있을때
cout << -1 << "\n";
else
{
cout << s.top() << "\n";
s.pop();
}
}
else if (input_s == "size")
{
cout << s.size() << "\n";
}
else if (input_s == "empty")
{
if (s.empty()) //스택이 비어 있을때
cout << 1 << "\n";
else
cout << 0 << "\n";
}
else if (input_s == "top")
{
if (s.empty()) //스택이 비어 있을때
cout << -1 << "\n";
else
cout << s.top() << "\n";
}
}
return 0;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 1874번 : 스택 수열 (0) | 2020.08.25 |
---|---|
[백준/BOJ] 백준 10773번 : 제로 (0) | 2020.08.24 |
[백준/BOJ] 백준 17136번 : 색종이 붙이기 (0) | 2020.08.23 |
[백준/BOJ] 백준 15686번 : 치킨 배달 (0) | 2020.08.23 |
[백준/BOJ] 백준 14442번 : 벽 부수고 이동하기 2 (0) | 2020.08.23 |