페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#3087

재연이의 신고식 1s 64MB

문제

국을에 취직한 재연이는 시험 삼아 다음과 같은 프로그램을 만들었다. 이 프로그램에는 오직 x라는 변수밖에 없고, 초기에 x = 0이다. 프로그램은 n개의 명령이 입력되며, 명령의 종류는 총 두 가지가 있다.

 

- add y(y는 정수이다) - x에 y를 더한다.

- set y(y는 정수이다) - x를 y값으로 바꾼다.

 

예를 들어 다음과 같다.

          x=0 //초기에 x는 0이다.

add 5

          x=5

add -3

          x=2

set 1

          x=1

add -2

          x=-1

add 5

          x=4

국을은 신입사원 재연이의 프로그래머로써의 자질을 시험하기 위해, 위 프로그램을 업데이트하라고 했다. 그의 과제는 위의 명령 중 몇 줄을 지워서(또는 한 줄도 지우지 않고) 마지막 x값의 결과가 최댓값이 되게 하는 것이다. 그러나 재연이는 한컴에서 공부하던 시절 성실하지 않았기 때문에, 그 과제가 너무 어려워서 당신이 도와주어야 한다. 국을의 과제에 따라 업데이트된 프로그램으로 출력되는 x의 최댓값을 구하여라. 


입력

첫 줄에 n이 주어진다. n은 명령의 수이다.

다음 n줄에 명령어 s(add 또는 set의 문자열이다)와 정수 y가 주어진다.

입력 제약 1<=n<=200,000 -1,000,000,000<=y<=1,000,000,000


출력

첫 줄에 x값의 최댓값을 출력한다.

주의사항 답은 4 byte int 범위(-231 ~ 231-1)를 넘을 수도 있다.


예제 #1

3

add 2
set 1
add -1
2

예제 #2

2

set 5
add 6
11

출처

Hackerrank - Week of Code 37 #2, 2018camp contest2 problemC
로그인해야 코드를 작성할 수 있어요.