728x90
반응형
백준 BAEKJOON 1049번 기타줄 [PYTHON/파이썬]
<문제 출처>
https://www.acmicpc.net/problem/1049
<풀이>
먼저 주어진 브랜드 중에서 6줄 패키지 가격과 낱개의 가격이 최소인 것만 뽑았다.
필요한 기타줄을 패키지로만 구매할지, 낱개로만 구매할지,
아니면 패지키와 낱개를 적절히 섞을지 계산하기 위해 if 문을 활용했다.
<코드>
import sys
input = sys.stdin.readline
N, M = map(int, input().split())
package = []
piece = []
for _ in range(M) :
a, b = map(int, input().split())
package.append(a)
piece.append(b)
min_pk = min(package)
min_pc = min(piece)
if N <= 6 : # 필요한 기타줄이 6개 이하
result = min(min_pk, min_pc * N)
else : # 그 외
if N % 6 == 0 : # 필요한 기타줄이 6으로 나누어 떨어지는 지 판별
tmp = (N // 6)
else :
tmp = (N // 6) + 1
result = min(tmp * min_pk, N * min_pc) # 패키지로만 구매, 낱개로만 구매의 최소값
for i in range(1, tmp) : # 패키지, 낱개를 섞어서 샀을 때 최소값이 나오면 저장
result = min(result, min_pk * i + (N-i*6) * min_pc)
print(result)
728x90
반응형
'ALGORITHM > PYTHON' 카테고리의 다른 글
백준 BAEKJOON 20113번 긴급 회의 [PYTHON/파이썬] (0) | 2022.10.25 |
---|---|
백준 BAEKJOON 25757번 임스와 함께하는 미니게임 [PYTHON/파이썬] (0) | 2022.10.25 |
백준 BAEKJOON 1408번 24 [PYTHON/파이썬] (0) | 2022.10.24 |
백준 BAEKJOON 25494번 단순한 문제 (Small) [PYTHON/파이썬] (0) | 2022.10.24 |
백준 BAEKJOON 1225번 이상한 곱셈 [PYTHON/파이썬] (1) | 2022.10.14 |