반응형
https://www.acmicpc.net/problem/2839
N = int(input())
arr=[]
maxnum=N//3
for i in range(maxnum+1):
if (N-i*3)/5 == int((N-i*3)/5):
if N==i*3:
arr.append(int(i))
else:
arr.append(int(i+(N-i*3)/5))
if len(arr)==0:
print('-1')
else:
print(min(arr))
3kg과 5kg로 나누어 들 수 있는 최대 봉지 수는 N을 3으로 나눈 몫이므로
최대 봉지 수 까지 모든 경우의 수를 다 검사해서 나누어 떨어지면 arr배열에 값을 넣어주었고,
arr배열이 비어있으면 3kg과 5kg으로 나눠서 들 수 없는 것이므로 -1을 출력하고
아닐 시 arr배열의 최솟값을 출력하였다.
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[python 파이썬] 백준 1157번: 단어 공부 (0) | 2019.12.17 |
---|---|
[python 파이썬] 백준 8958번: OX퀴즈 (0) | 2019.12.16 |
[python 파이썬] 백준 4344번: 평균은 넘겠지 (0) | 2019.12.15 |
[python 파이썬] 백준 2292번: 벌집 (0) | 2019.12.15 |
[python 파이썬] 백준 1712번: 손익분기점 (0) | 2019.12.13 |