알고리즘/BOJ

백준 10773번 제로

꾸준함. 2019. 3. 7. 15:33

문제 링크입니다: https://www.acmicpc.net/problem/10773


스택을 이용하여 쉽게 풀 수 있는 문제였습니다.

0이 아닌 수자라면 push하고 0이 오면 pop을 하면 됩니다.

반복문이 끝나면 스택에 남아 있는 숫자들의 합을 출력해주면 됩니다.


 

#include <iostream>

#include <stack>

using namespace std;

 

int main(void)

{

        ios_base::sync_with_stdio(0);

        cin.tie(0);

        int K;

        cin >> K;

 

        stack<int> s;

        for (int i = 0; i < K; i++)

        {

                 int num;

                 cin >> num;

 

                 if (num)

                         s.push(num);

                 else

                         s.pop();

        }

 

        long long sum = 0;

        while (!s.empty())

        {

                 sum += s.top();

                 s.pop();

        }

        cout << sum << "\n";

        return 0;

}


개발환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형

'알고리즘 > BOJ' 카테고리의 다른 글

백준 14490번 백대열  (0) 2019.03.07
백준 2164번 카드2  (0) 2019.03.07
백준 1011번 Fly me to the Alpha Centauri  (2) 2019.03.07
백준 11365번 !밀비 급일  (0) 2019.03.04
백준 12738번 가장 긴 증가하는 부분 수열 3  (2) 2019.03.04