문제
https://www.acmicpc.net/problem/2839
문제는 위 사이트를 참고해주세요.
풀이
x = int(input()) # 숫자 입력
total = 0 # 봉지의 개수를 저장할 변수
while 1:
if x % 5 == 0: # x가 5로 나눠지면 5로 나눈 몫을 total에 더 해줌,
# x = 0이 되면 3으로 나눴을 때의 몫을 출력
total = total + (x // 5)
print(total)
break
x -= 3 # x가 5로 나누어지지 않는다면 x에서 3을 빼고
total += 1 # 3으로 한번 나눈 것으로 생각하고 1을 더해줍니다.
if x < 0: # x가 5로 나누어지지 않는다면 계속 -3을 하다가 음수가 됨
print(-1) # -1 출력
break
주석을 확인해주세요.
첫 if문을 3으로 할 경우, x가 3의 배수라면 봉지의 개수를 최솟값으로 구할 수 없습니다.
결과
'IT > 알고리즘' 카테고리의 다른 글
1일 N알고리즘 - #17 (0) | 2020.05.19 |
---|---|
1일 N알고리즘 - #16 (0) | 2020.05.18 |
1일 N알고리즘 - #14 (0) | 2020.05.17 |
1일 N알고리즘 - #13 (0) | 2020.05.16 |
1일 N알고리즘 - #12 (0) | 2020.05.16 |
댓글