Algorithm/백준

[백준] 10773 제로 with C++

nowkoes 2023. 5. 9. 00:00

문제설명


입출력 예제


개념

 잘못 부른 수를 0으로 지우고, 마지막의 수의 합을 출력하므로 스택의 개념을 이용하면 쉽게 풀 수 있다. 즉, 0을 입력받는 순간 스택에서 하나를 뽑으면 된다.


풀이

#include <iostream>
#include <stack>

int main()
{
	int K, n, sum = 0;
	std::cin >> K;
	std::stack<int> st;

	while (K--)
	{
		std::cin >> n;

		if (n == 0)
			st.pop();

		else
			st.push(n);
	}

	while (!st.empty())
	{
		sum += st.top();
		st.pop();
	}

	std::cout << sum;
}

 

반응형