https://www.acmicpc.net/problem/2480
내 풀이
A, B, C = map(int,input().split())
price = 0
if A != B != C:
price = max(A, B, C) * 100
elif A == B != C:
price = 1000 + A * 100
elif A != B ==C:
price = 1000 + B * 100
elif A == C != B:
price = 1000 + A * 100
elif A == B == C:
price = 10000 + A*1000
print(price)
정석 풀이
a, b, c = map(int,input().split())
if a == b == c:
print(10000+a*1000)
elif a == b or a == c: #elif의 전제로 셋이 다 같진 않지만 그 중에서도 a=b일 때, 혹은 a=c일 때
print(1000+a*100) #a 공유
elif b == c:
print(1000+b*100)
else: #셋 다 다를 때(=위의 경우들이 다 아닐 때)
print(max(a,b,c)*100)
불필요한 변수는 버리고...가장 큰 경우의 수를 잘 잡아야 함!
"셋 다 다를 때"가 아니라 "셋 다 같을 때"
'백준' 카테고리의 다른 글
백준 8958번: OX퀴즈💦 (0) | 2023.07.18 |
---|---|
백준 9506번: 약수들의 합💦 (0) | 2023.07.17 |
백준 2525번: 오븐시계💦 (0) | 2023.07.14 |
백준 2884번: 알람 시계 (0) | 2023.07.14 |
백준 2588번: 곱셈 (0) | 2023.07.12 |