Algorithm/스택과 큐
백준 제로(10773) C++ 풀이
khjtoy
2023. 1. 28. 17:15

알고리즘 분류
구현
자료 구조
스택
문제 해결 아이디어
Stack을 이용하여 입력받은 숫자를 넣고 0이 입력되면 pop()하여 가장 최근에 들어온 숫자를 지운다.
이 과정을 다 하면 stack에 남아있는 숫자를 더하면 된다.
코드
#include <iostream>
#include <stack>
using namespace std;
int main()
{
int k;
stack<int> s;
cin >> k;
int input;
for (int i = 0; i < k; i++)
{
cin >> input;
if (input != 0) s.push(input);
else
{
if (!s.empty())
s.pop();
}
}
int cnt = 0;
while (!s.empty())
{
cnt += s.top();
s.pop();
}
cout << cnt;
}