백준 2839 설탕배달
https://www.acmicpc.net/problem/2839 (opens in a new tab)
풀이
import sys
input = sys.stdin.readline
a = int(input())
x = a // 5
ans = -1
if a == 0 :
ans = 0
if x * 5 != a :
while x * 5 != a :
rest = a - (x * 5)
if rest % 3 == 0 :
ans = x + (rest // 3)
break
x -= 1
if x < 0 :
break
else :
ans = a // 5
print(ans)
내가 범한 오류
첫 풀이는 다음과 같았다.
문제를 처음 풀 때 5와 나누어 떨어지는 경우를 고려를 안한 것이 문제가 되어서 약 10분가량 허비했다.
이게 만약 실제 코테 상황이었으면 어땟을지 좀 아찔하다.
import sys
input = sys.stdin.readline
a = int(input())
x = a // 5
ans = -1
if a == 0 :
ans = 0
while x * 5 != a :
rest = a - (x * 5)
if rest % 3 == 0 :
ans = x + (rest // 3)
break
x -= 1
if x < 0 :
break
print(ans)