만드는 중입니다

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

GCC 유산

면접 대비

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

요약
<? (최솟값)와 >? (최댓값) 연산자, 덧셈, 뺄셈, 괄호로 이루어진 식을 우선순위와 왼쪽 결합 규칙에 맞게 계산한다.
난이도

보통10점 중 5점

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

문제

옛날 GCC에는 비표준 확장으로 각각 최솟값과 최댓값을 구해주는 이항 연산자 <?와 >?가 있었다. (현재는 지원되지 않는다.) 이 두 연산자를 포함하는 식을 계산해보자. 식을 계산할 때에는 괄호 안부터 먼저 계산하고 덧셈과 뺄셈은 <?와 >?보다 우선순위가 낮다. 우선순위가 같은 연산자(덧셈과 뺄셈, <?와 >?)끼리는 왼쪽부터 계산해야 한다. 계산 과정에서 등장하는 모든 수는 부호 있는 32비트 정수형으로 나타낼 수 있다.

입력

계산해야 할 식이 주어진다. 주어지는 식은 숫자, 괄호, 이항 연산자 +, -, <?, >?만을 포함하며(+, -는 단항 연산자로 쓰이지 않음) 띄어쓰기는 없다. 식의 길이는 100보다 작거나 같고 최소 하나의 숫자를 포함하며 문법 오류가 있는 식은 주어지지 않는다.

출력

계산 결과를 출력한다.

예제4

  1. 예제 1

    입력
    35<?40
    예상 출력
    35
    
  2. 예제 2

    입력
    7>?(30<?(50+2-6)>?18)>?3+4<?1>?49
    예상 출력
    79
    
  3. 예제 3

    입력
    1<?2
    
    예상 출력
    1
    
  4. 예제 4

    입력
    10+20
    
    예상 출력
    30