문제1862--계단 2

1862: 계단 2

[만든사람 : onthebitLab-admin 2023/07/05]
시간제한 : 1.000 sec  메모리제한 : 128 MiB

문제 설명

1 ~ N번 칸까지 계단이 있고, 0번 칸에서 시작하여 N번 칸에 도착하고자 한다. 계단을 1칸씩 순서대로 오르면서 각 칸에 있는 숫자 카드를 모아야 한다. 숫자 카드는 빨간색과 파란색 2종류가 있는데, 파란색 숫자 카드를 보면 주워서 보관하고, 빨간색 숫자 카드를 보면 직전에 주운 파란색 숫자 카드 1장을 버려야 한다. (빨간색 숫자 카드도 줍지 않는다.)
예를 들어, N = 4이고 {1, 3, -2, 2}와 같이 계단에 숫자 카드가 있다고 가정하자. 양수는 파란색 카드를 의미하고, 음수는 빨간색 카드를 의미한다. 숫자 카드 값으로 0은 주어지지 않는다. 이러한 경우 1번 칸에서 1(숫자가 1인 파란색 카드)을 줍고, 2번 칸에서 3을 줍는다. 3번 칸에서 -2(숫자가 2인 빨간색 카드)를 보면, 직전에 주운 3을 버린다. 4번 칸에서 2를 줍는다. 최종적으로 {1, 2}의 카드가 남는다. 이 때 숫자 카드의 합인 3을 출력한다.

계단을 오르면서 주운 숫자 카드의 합을 출력하는 프로그램을 작성해보자. 단, 가지고 있는 숫자 카드가 없는 상황에서 숫자 카드를 버리는 입력은 주어지지 않는다.

입력 설명

첫 번째 줄에 계단의 칸 수(N)를 입력한다.

두 번째 줄에 N개의 계단에 놓인 숫자 카드의 값(inp[i])이 공백으로 구분되어 입력된다.

(단, N은 자연수이며, 1 <= N <= 20의 범위를 갖는다. inp[i]는 0이 아닌 정수이며 –100 <= inp[i] <= 100의 범위를 갖는다.)

출력 설명

계단을 오르면서 주운 숫자 카드의 합을 출력한다.

입력 예시 Copy

4
1 3 -2 2

출력 예시 Copy

3

출처/분류