오답 코드
6 묶음을 하나 사는 것보다 낱개 6개를 사는게 더 싼 경우를 고려하지 않았음
if arr_6[0] >= (n % 6) * arr_1[0]:
sum_v = (n//6) * arr_6[0] + (n % 6) * arr_1[0]
else:
sum_v = (n//6 +1) * arr_6[0]
print(sum_v)
if arr_6[0] >= 6 *arr_1[0]
룰 추가해야 했다.
정답 코드
# 1049 기타줄 실버4
n, m = map(int,input().split())
arr_6 = []
arr_1 = []
for _ in range(m):
x,y = map(int,input().split())
arr_6.append(x) # 6개짜리
arr_1.append(y) # 1개 짜리
# print(arr_6 ,arr_1)
arr_6.sort()
arr_1.sort()
sum_v = 0
if arr_6[0] >= arr_1[0] * 6:
sum_v = n * arr_1[0]
elif arr_6[0] >= (n % 6) * arr_1[0]:
sum_v = (n//6) * arr_6[0] + (n % 6) * arr_1[0]
else:
sum_v = (n//6 +1) * arr_6[0]
print(sum_v)
'알고리즘 문제풀이' 카테고리의 다른 글
백준 2941 크로아티아 알파벳 Python 구현 문자열실버5 (0) | 2024.03.19 |
---|---|
백준 1316 그룹 단어 체커 Python 정렬 문자열 실버5 (0) | 2024.03.19 |
백준 1026 보물 Python 수학 그리디 정렬 실버4 (0) | 2024.03.18 |
백준 1476 날짜계산 Python 수학 브루트포스실버5 (1) | 2024.03.17 |
백준 10814 나이순정렬 Python 정렬 실버5 (0) | 2024.03.17 |