[BOJ][실4][10828] 스텍

문제 링크

문제링크

첫 번째 풀이 : 자료구조

알고리즘

조건대로 구현합니다.

정답코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using pii = pair<int, int>;

const int MAX = 100'010;

int n, m, k;
stack<int> st;
int main()
{
    //freopen("input.txt", "r", stdin);
    ios_base::sync_with_stdio(0); cin.tie(0);
    cin >> n;
    string s;
    int t;
    for (int i = 0; i < n; i++) {
        cin >> s;
        if (s.compare("push") == 0) {
            cin >> t;
            st.push(t);
        }
        else if (s.compare("top") == 0) {
            if (st.empty()) cout << -1 << "\n";
            else cout << st.top() << "\n";
        }
        else if (s.compare("pop") == 0) {
            if (st.empty()) cout << -1 << "\n";
            else cout << st.top() << "\n", st.pop();
            
        }
        else if (s.compare("size") == 0) {
            cout << st.size() << "\n";
        }
        else if (s.compare("empty") == 0) {
            if (st.empty()) cout << 1 << "\n";
            else cout << 0 << "\n";
        }
    }
    return 0;
}

Success Notice: 수고하셨습니다. :+1:

Leave a comment