만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

큰 수 뒤집기

시간 제한3초메모리 제한1024 MB

요약
숫자를 덧붙이는 명령과 뒤집기 명령이 담긴 문자열이 주어질 때, 덧붙일 때마다 S를 십진수로 읽은 값을 X에 더한 최종 X를 구합니다.
난이도

보통10점 중 6점

유형
문자열, 수학, 구현
정답자
아직 제출이 없습니다

문제

문자열 SS와 정수 XX가 있다. 처음에 SS는 빈 문자열이고 X=0X=0이다. 다음 쿼리를 수행해야 한다.

  • 1부터 9까지의 숫자 중 하나가 주어지면, SS의 맨 뒤에 그 숫자를 덧붙인다. 그다음 SS를 10진법 정수로 읽은 값을 XX에 더한다.
  • 하이픈(-)이 주어지면, SS를 뒤집는다.

모든 쿼리를 처리한 뒤 XX의 값을 구하는 프로그램을 작성하자.

입력

첫째 줄에 쿼리 정보를 담고 있는 길이 11 이상 2 000 0002\,000\,000 이하의 문자열 TT가 주어진다. 각 문자는 1부터 9까지의 숫자 중 하나 또는 -이며, 첫 번째 문자는 -이 아니다.

출력

쿼리를 순서대로 모두 처리한 뒤 XX의 값을 출력한다.

힌트

정답이 매우 클 수 있음에 유의하자.

예제2

  1. 예제 1

    입력
    1234-567-89-123
    
    예상 출력
    1093443373651
    
  2. 예제 2

    입력
    12345-12345-12345-12345-12345
    
    예상 출력
    6035727023470496707633735