BOJ 2338 - 긴자리 계산 (Python3)

2022. 11. 14. 18:21Bronze/Bronze V

특정 언어에서 대단히 쉬운 문제가 있다. 이 문제가 그러하다.

나나 이 글을 보는 당신들은 파이썬을 쓸 테니 다른 언어를 쓰는 사람은 어떤 식으로 프로그램을 짤지 모르나, C++ 주력으로 하는 사람은 실버 2 ~ 골드 5쯤 보고 있더라.

물론 귀도 반 로섬의 은총을 받은 우리는 아주 간단하게 문제를 풀 수 있다.

 

그럼 본격적으로 풀이에 돌입해 보자.


문제

두 수 A, B를 입력받아, A+B, A-B, A×B를 구하는 프로그램을 작성하시오.

 

입력

첫째 줄에 A가, 둘째 줄에 B가 주어진다. 각각의 수는 10진수로 1,000자리를 넘지 않으며 양수와 음수가 모두 주어질 수 있다.

 

예제 입력)

1
-1

 

출력

첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A×B를 출력한다. 각각을 출력할 때, 답이 0인 경우를 제외하고는 0으로 시작하게 해서는 안 된다(1을 01로 출력하면 안 된다는 의미).

 

예제 출력)

0
2
-1

 


내 코드

a,b = int(input()),int(input())
print(a+b)
print(a-b)
print(a*b)

 

은총을 받아 몇만 자리의 덧셈도 무리 없이 해내는 파이썬을 쓰는 우리는 별 문제 없이 제출할 수 있다.

그러나 변수에 자릿수 제한이 있는 특정 언어는 아예 라이브러리 하나를 만드는 수준으로 코딩을 해야 한다.

누군가가 블로그에 올려놓은 글을 보니 무려 100줄을 넘어가더라. 세상에 맙소사.

 

이로서 2338번의 풀이를 마친다.

그럼, 오늘도 당신의 코딩 실력이 상승하기를.

 

 

728x90

'Bronze > Bronze V' 카테고리의 다른 글

BOJ 8545 - Zadanie próbne (Python3)  (0) 2022.11.11
BOJ 1271 - 엄청난 부자 2 (Python3)  (0) 2022.11.11
BOJ 2438 - 별 찍기 - 1 (Python3)  (0) 2022.11.11
BOJ 2557 - Hello World (Python3)  (0) 2022.11.10
BOJ 1008 - A/B (Python3)  (0) 2022.11.10