문제
풀이
기본적인 스택문제이다. 스택을 특성을 고려하여 pop_back
함수를 이용하여 마지막 수를 제거한 뒤, 덧셈해주면 된다.
소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <vector>
using namespace std;
int main() {
int N;
cin >> N;
vector<int> arr;
for (int i = 0; i < N; i++) {
int input;
cin >> input;
if (input == 0) {
arr.pop_back();
}
else arr.push_back(input);
}
int result = 0;
for (int i = 0; i < arr.size(); i++) {
result += arr[i];
}
printf("%d\n", result);
}