File tree Expand file tree Collapse file tree 1 file changed +58
-0
lines changed
weekly/week01/BOJ_10828_스택 Expand file tree Collapse file tree 1 file changed +58
-0
lines changed Original file line number Diff line number Diff line change 1+ #include < iostream>
2+ #include < vector>
3+ #include < string>
4+ using namespace std ;
5+
6+ class Stack {
7+ public:
8+ void push (int X) {
9+ stack.push_back (X);
10+ }
11+ void pop () {
12+ if (stack.empty ()) cout << -1 << " \n " ;
13+ else {
14+ cout << stack[stack.size () - 1 ] << " \n " ;
15+ stack.erase (stack.end () - 1 );
16+ }
17+ }
18+ void size () {
19+ cout << stack.size () << " \n " ;
20+ }
21+ void empty () {
22+ cout << stack.empty () << " \n " ;
23+ }
24+ void top () {
25+ if (stack.empty ()) cout << -1 << " \n " ;
26+ else {
27+ cout << stack[stack.size () - 1 ] << " \n " ;
28+ }
29+ }
30+ private:
31+ vector<int > stack;
32+ };
33+
34+ int main () {
35+ int N, X;
36+ string s;
37+ cin >> N;
38+ Stack stack;
39+ while (N--) {
40+ cin >> s;
41+ if (s == " push" ) {
42+ cin >> X;
43+ stack.push (X);
44+ }
45+ else if (s == " pop" ) {
46+ stack.pop ();
47+ }
48+ else if (s == " size" ) {
49+ stack.size ();
50+ }
51+ else if (s == " empty" ) {
52+ stack.empty ();
53+ }
54+ else if (s == " top" ) {
55+ stack.top ();
56+ }
57+ }
58+ }
You can’t perform that action at this time.
0 commit comments