7305 : 연산자 우선순위 재귀
•시간제한: 2.000 S
•메모리제한: 256 MB
•제출: 0
•통과: 0
•만든사람: suakii
문제 설명
사칙연산과 괄호가 포함된 수식 문자열을 재귀 하향 파서(Recursive Descent Parser)로 계산하십시오.
연산자 우선순위: 괄호 > 곱셈/나눗셈 > 덧셈/뺄셈
나눗셈은 정수 나눗셈(몫)으로 처리합니다.
[제약 조건]
• 입력되는 모든 수는 정수입니다.
연산자 우선순위: 괄호 > 곱셈/나눗셈 > 덧셈/뺄셈
나눗셈은 정수 나눗셈(몫)으로 처리합니다.
[제약 조건]
• 입력되는 모든 수는 정수입니다.
입력 설명
첫째 줄에 사칙연산과 괄호가 포함된 중위 표기법 수식 문자열이 주어집니다. (길이 $\le 1{,}000$)
출력 설명
연산자 우선순위와 괄호를 고려해 재귀적으로 수식을 계산한 최종값을 출력합니다.
입력 예시
COPY
복사되었습니다!
복사되었습니다!
3+5*2
출력 예시
COPY
복사되었습니다!
복사되었습니다!
13
도움
재귀 하향 파서 구조:
parse_expr()는 덧셈/뺄셈을 처리하며 parse_term()을 호출, parse_term()은 곱셈/나눗셈을 처리하며 parse_factor()를 호출, parse_factor()는 숫자 또는 괄호 안 수식을 처리합니다.