본문 바로가기

Algorithm/Baekjoon

[백준_JAVA_알고리즘] 10773 제로

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		int k = scanner.nextInt();
		int[] stack = new int[k];
		int num = 0; int sum = 0; int top = -1;
		
		for(int i = 0; i < k; i++) {
			num = scanner.nextInt();
			if(num == 0) {
				top--;
			}
			else {
				top++;
				stack[top] = num;
			}
		}
		for(int i = 0; i <= top; i++)
			sum += stack[i];
		System.out.println(sum);
		scanner.close();
	}
}

stack을 이용해서 구현을 할 수 있다.

top 변수를 지정하여(-1로 초기화) 만약 0을 입력받을 경우, top을 감소시킨다.

이렇게 stack의 값을 더해서 출력한다.