jyamethyst21 님의 블로그

백준 2864번 - '5와 6의 차이' (PYTHON 풀이) 본문

CODING 💻

백준 2864번 - '5와 6의 차이' (PYTHON 풀이)

jyamethyst21 2026. 3. 17. 00:40

문제:

 

5를 6, 6을 5로 잘못 볼 때가 있는 상근이는 두 수를 더했을 때의 최솟값과 최댓값을 구하고 싶어한다.

이를 계산해주는 코드를 짜보자.

 

풀이:

A, B = map(str,input().split())

min_A = int(A.replace('6','5'))
max_A = int(A.replace('5','6'))
min_B = int(B.replace('6','5'))
max_B = int(B.replace('5','6'))

print((min_A+min_B), (max_A+max_B))

일단 5를 6으로, 6을 5로 잘못 볼 때가 있다고 해서 모든 경우의 수를 구할 필요는 없다.

결국 두 수에 모든 5를 6으로 볼 때가 가장 큰 수이고 두 수에 모든 6을 5로 볼 때가 가장 작은 수이기 때문에 파이썬의 replace 함수를 활용해서 입력받은 A, B에 대해 값을 바꿔주면 된다.

5, 6이 없는 숫자를 입력받을 경우에도 replace는 오류를 뱉어내지 않기 때문에 그냥 두 수를 더해서 계산이 될 것이다.