-문제: https://www.acmicpc.net/problem/1049
그렇게 어렵지 않았던 문제다.
처음에는 한 브랜드 당 패키지로만 살 때, 패키지+낱개, 낱개로만 살 때 중 최솟값을 출력하면 된다고 생각했는데
예제를 보니까 브랜드가 섞여도 상관없다는 것을 알게 된 뒤
패키지에서 최솟값과 낱개에서 최솟값을 가지고
min(패키지로만, 패키지 + 낱개, 낱개만)의 값을 출력했다
Silver Level4 문제
-정답풀이:
n, m = map(int, input().split())
data=[]
for _ in range(m):
data.append(list(map(int,input().split())))
data.sort(key=lambda x : x[0])
a=data[0][0]
data.sort(key=lambda x : x[1])
b=data[0][1]
answer=min(((n//6)+1)*a, (n//6)*a + (n%6)*b, b*n)
print(answer)
'백준 > Greedy' 카테고리의 다른 글
[그리디/백준] 1449번: 수리공 항승 (0) | 2022.07.05 |
---|---|
[그리디/백준] 1080번: 행렬 (0) | 2022.07.04 |
[그리디/백준] 16953번: A -> B (0) | 2022.07.01 |
[그리디/백준] 1202번: 보석 도둑 (0) | 2022.07.01 |
[그리디/백준] 1439번: 뒤집기 (0) | 2022.07.01 |