코딩테스트/백준
[백준] 10773번 제로 (C++)
Deff_a
2024. 12. 17. 14:15
문제

풀이
Stack을 이용하여 해당 문제를 풀이했다.
입력된 수가 0이 아니라면 push, 0이라면 pop을 했고, 이후 스택에 있는 모든 수를 더한 뒤 출력했다.
#include <iostream>
#include <stack>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int k, input;
cin >> k;
stack<int> stack;
for (int i = 0; i < k; i++)
{
cin >> input;
if (input == 0)
stack.pop();
else
stack.push(input);
}
int sum = 0;
while (!stack.empty()) {
sum += stack.top();
stack.pop();
}
cout << sum;
return 0;
}