*문제 출처는 백준에 있습니다.
문제 제목: 기타줄 / 1049번 (실버 4단계)
문제 사이트: https://www.acmicpc.net/problem/1049
문제 설명
나의 풀이
# 입력 처리
n, m = map(int, input().split())
six_set = 1001 # 패키지 가격의 초기값 (최대값보다 큰 값으로 설정)
each = 1001 # 낱개 가격의 초기값 (최대값보다 큰 값으로 설정)
# 각 브랜드의 패키지 및 낱개 가격을 입력받으며 최소값 갱신
for _ in range(m):
s, e = map(int, input().split())
six_set = min(six_set, s)
each = min(each, e)
# 최소 비용 계산
# 1. 전부 패키지로만 구매하는 경우
cost_all_sets = ((n // 6) + 1) * six_set
# 2. 전부 낱개로만 구매하는 경우
cost_all_each = n * each
# 3. 패키지와 낱개를 조합하는 경우
cost_mixed = (n // 6) * six_set + (n % 6) * each
# 최소 비용 출력
result = min(cost_all_sets, cost_all_each, cost_mixed)
print(result)
※ 알아야 할 것
구현문제!
'코딩테스트(프로그래머스 & 백준) > 백준-Python' 카테고리의 다른 글
백준 / 문제집 / 1766번 / Python (0) | 2024.11.19 |
---|---|
백준 / 거짓말 / 1043번 / Python (1) | 2024.11.18 |
백준 / 영수증 / 25304번 / Python (0) | 2024.11.16 |
백준 / 농장 관리 / 1245번 / Python (1) | 2024.11.14 |
백준 / 시간 관리 / 1263번 / Python (2) | 2024.11.13 |