[백준/파이썬] 2408번 풀이

업데이트:



문제 정보


풀이

문제

어떤 임의의 수식이 입력으로 들어올때 수식을 계산하는 프로그램을 짜시오. 수의 크기는 -10100 이상 10100이하이고, 수식에 괄호는 없다.

소수점이 나올 경우, 소수점은 내린다. 참고로, -5/2 = -3이고, 5/-2도 -3이다. -5/-2는 2이다.

입력 요약
수의 개수 N(1 ≤ N ≤ 10) 이 주어지고 다음 2N-1 개의 줄에는 수와 연산자(+, -, *, /) 가 번갈아서 들어온다.

출력 요약
첫째 줄에 계산이 끝난 후 수를 출력한다.

코드

import math
print(math.floor(eval(''.join([input() for _ in range(2*int(input())-1)]))))

설명

핵심은 구현 관점에서 어떤 임의의 수식이 입력으로 들어올때 수식을 계산하는 프로그램을 짜시오. 수의 크기는 -10100 이상 10100이하이고, 수식에 괄호는 없다.

소수점이 나올 경우, 소수점은 내린다. 참고로, -5/2 = -3이고, 5/-2도 -3이다. -5/-2는 2이다.를 만족하도록 로직을 구성하는 것입니다.

코드는 입력을 파싱한 뒤 조건 분기와 계산을 순서대로 수행하고, 문제에서 요구한 형식으로 결과를 출력합니다.

경계값과 예외 케이스도 함께 고려해 오답이 나기 쉬운 상황을 방지합니다.



이런 주제는 어떠신가요?

비슷한 난이도와 유형의 문제를 이어서 보면 풀이 감각을 더 빠르게 잡기 좋습니다.

댓글남기기