처음으로 풀어본 STL 문제였다.
문제를 풀면서 어떻게 공백('\n')을 받아 루프를 멈출지를 엄청 고민했는데,
c++ - 빈 줄까지 파일 읽기 - 스택 오버플로 (stackoverflow.com)
C++ string을 int로 변경하는 방법 (tistory.com)
알고보니 첫 입력으로 입력의 개수가 주어져 for문으로 구현하면 되었다.
#include <iostream>
#include <vector>
#include <numeric>
int main() {
int k;
std::cin >> k;
int sum = 0;
std::vector<int> vec(k);
int tmp;
for (int i = 0; i < k; i++) {
std::cin >> tmp;
if (tmp == 0) {
vec.pop_back();
}
else {
vec.push_back(tmp);
}
}
sum = std::accumulate(vec.begin(), vec.end(), 0);
std::cout << sum << std::endl;
return 0;
}
'Computer Science > C++' 카테고리의 다른 글
백준 C++ | #12 BOJ1110 더하기 사이클 C++ 문제 풀이 (0) | 2022.08.11 |
---|---|
백준 C++ | #11 BOJ1966 프린터 큐 C++ 문제 풀이 (0) | 2022.08.10 |
백준 C++ | #9 BOJ4344 평균은 넘겠지 C++ 문제 풀이 (0) | 2022.08.07 |
백준 C++ | #8 BOJ3048 개미 C++ 문제 풀이 (0) | 2022.08.06 |
백준 C++ | #7 BOJ1018 체스판 다시 칠하기 C++ 문제 풀이 (0) | 2022.08.05 |