© 2025 anveloper.dev
GitHub·LinkedIn·Contact

목차

  • 문제
  • 입력
  • 출력
  • 예제
  • 풀이
  • 코드
  • 복잡도
풀이 목록으로 돌아가기

BOJ 2408 - 큰 수 계산

2025-07-15
BOJ
브론즈 II
python
원본 문제 보기
수학
구현
사칙연산
임의 정밀도 / 큰 수 연산

문제

BOJ 2408 - 큰 수 계산

N개의 큰 수와 N-1개의 연산자(+, -, *, /)가 주어진다. 수식을 계산한 결과를 출력하라. 나눗셈은 정수 나눗셈이다.

입력

첫째 줄에 N, 이후 N개의 수와 N-1개의 연산자가 번갈아 주어진다.

출력

수식의 결과를 출력한다.

예제

입력출력
2 1000000000000000000 + 10000000000000000002000000000000000000

풀이

수와 연산자를 하나의 문자열로 합친 뒤 Python의 eval()로 계산한다.

  1. N개의 수와 N-1개의 연산자를 순서대로 읽어 하나의 문자열로 연결한다
  2. /를 //로 치환하여 정수 나눗셈으로 변환한다
  3. eval()로 수식을 평가하여 결과를 출력한다

핵심 아이디어: Python은 임의 정밀도 정수를 지원하므로, 큰 수도 eval()로 직접 계산할 수 있다.

코드

if __name__ == "__main__":
    equation = ""
    n = int(input())
    for _ in range(n + n - 1):
        equation += input()
    equation = equation.replace("/", "//")
    print(eval(equation))

복잡도

  • 시간: O(N)
  • 공간: O(N)