a,b = input().split()
c = a.replace('5','6' )
d = a.replace('6','5' )
e= b.replace('5','6' )
f= b.replace('6','5')
n_min = int(d)+int(f)
n_max = int(c)+int(e)
print(n_min, n_max)
왜 greedy 알고리즘일까?
"가장 작은 수" 와 " 가장 큰 수" 를 만들어 출력해야하는 문제
→ 그렇다면 어떤 식으로 숫자를 만들 수 있을까?
→ 5를 6으로 모두 바꾸고 더한게 최대, 5로 모두 바꾸고 더한게 최대일 것
→ replace를 활용하여 변경해주고 더해주자 (str 형태에서 바꾸고 int로 바꾸는 게 좋을 것 )
300x250
'Algorithm' 카테고리의 다른 글
[코딩테스트/Python] Greedy 알고리즘 예제/ 숫자 카드 게임 (0) | 2023.03.03 |
---|---|
[코딩테스트/Python] Greedy 알고리즘 예제/ 큰수의 법칙 (0) | 2023.03.02 |
[코딩테스트/Python]Greedy (탐욕법) 알고리즘 (0) | 2023.02.27 |
[코딩테스트] 코딩 테스트 유형 정리 (0) | 2023.02.27 |
[코딩 테스트] 복잡도의 개념 (시간 복잡도 / 공간 복잡도) (0) | 2023.02.27 |