백준 #10773 제로

less than 1 minute read

백준 #10773 제로

스택을 사용하는 문제. 0을 입력 받으면 pop, 그렇지 않으면 push하고 스택에 남아있는 정수의 합을 출력한다.

#include <iostream>
#include <stack>
#include <bits/stdc++.h>

using namespace std;

int K;
stack<int> stk;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> K;
    int sum = 0;
    for(int i = 0; i < K; i++) {
        int tmp;
        cin >> tmp;
        if(tmp != 0) {
            stk.push(tmp);
        }
        else {
            stk.pop();
        }
    }
    while(!stk.empty()) {
        sum += stk.top();
        stk.pop();
    }
    cout << sum;
    return 0;
}

Comments