인플레이션
면접 대비시간 제한3초메모리 제한1024 MB
N개 요리의 가격이 주어지고, 매일 모든 가격에 x를 더하거나 가격이 x인 요리의 가격을 y로 바꾼 뒤 가격 합을 구합니다.
문제
스웨덴 남부 사람들은 팔라펠을 많이 먹는 것으로 알려져 있다. 팔라펠 가격은 자주 변하고, 경제 상황을 분석하는 가장 좋은 방법은 매일 같은 팔라펠 가게에 가서 메뉴에 있는 모든 가격을 더해 보는 것이다.
팔라펠 가게 메뉴에는 서로 다른 요리가 개 있다. 번째 요리의 가격은 이다.
매일 다음 사건 중 하나가 일어난다.
INFLATION x: 정수 를 모든 가격에 더한다.SET x y: 가격이 인 모든 요리의 가격을 로 바꾼다.
일 동안의 사건을 처리하고, 매일 처리가 끝난 뒤 모든 가격 의 합을 출력한다.
입력
첫째 줄에 요리의 개수를 나타내는 정수 이 주어진다.
둘째 줄에 개의 정수 이 주어진다.
셋째 줄에 날짜 수를 나타내는 정수 가 주어진다.
이후 개의 줄에는 문자열 와 그 뒤에 정수 한 개 또는 두 개가 주어진다.
가 INFLATION이면 정수 가 하나 이어서 주어진다. 이는 그날 모든 가격에 를 더한다는 뜻이다.
가 SET이면 정수 와 가 이어서 주어진다. 이는 그날 가격이 인 모든 요리의 가격을 로 설정한다는 뜻이다.
출력
개의 줄을 출력한다. 번째 줄에는 일이 끝난 뒤 모든 가격 의 합을 출력한다.
제한
- .
- (인 각 에 대해).
- .
- 모든 날에 대해 .
참고: 답은 32비트 정수에 들어가지 않을 수 있으므로, C++을 사용한다면 오버플로에 주의해야 한다.
힌트
이 그림은 예제 의 처음 이틀에 해당한다. 첫날이 끝난 뒤 가격의 합은 이므로, 출력의 첫 번째 정수는 이다.
