728x90
스택 문제입니다.
0을 누르면 pop하고
그 외에는 push를 해줍니다.
스택에 있는 수들을 전부 더해서 출력합니다.
#include <iostream>
#include <cstring>
#include <stack>
#include <string>
#include <algorithm>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int num;
int sum = 0;
stack<int> s;
cin >> n;
for (int i = 0; i < n; ++i) {
cin >> num;
if (num == 0) {
s.pop();
}
else {
s.push(num);
}
}
for (int i = 0; !s.empty(); ++i) {
sum += s.top();
s.pop();
}
cout << sum << endl;
return 0;
}
'알고리즘' 카테고리의 다른 글
[C++] 백준 9012번 괄호 (0) | 2019.09.04 |
---|---|
[C++] 백준 2164번 카드2 (0) | 2019.09.04 |
[C++] 백준 2004번 조합 0의 개수 (0) | 2019.09.04 |
[C++] 백준 1676번 팩토리얼 0의 개수 (0) | 2019.09.04 |
[C++] 백준 9375번 패션왕 신해빈 (0) | 2019.09.03 |