Programming/1 Day 1 Commit
[BaekJoon] 주유소 - 실버3 (Python3)
Mandy's
2024. 2. 15. 17:37
- 모든 주유소의 가격이 똑같다면?
- 처음에는 sort로 접근했는데 그럴 필요없이
- 마지막 if i == n-2일 때, min이랑 거리를 곱해주면 된다.
- 아직은 계속 생각해내는게 쉽진 않지만, 조금씩 성장하는 중이다!
n = int(input())
len = list(map(int, input().split()))
costs = list(map(int, input().split()))
total = costs[0] * len[0] # 처음은 무조건 가야하므로.
min = costs[0] # 최솟값은 초기값으로 세팅
dist = 0 # 가야할 거리 계산
for i in range(1, n-1):
if costs[i] < min: # 비용이 최솟값보다 작을 때
total += min * dist # 그 전 최솟값과 길이를 곱해줌
dist = len[i] # i번째 길이로 초기화
min = costs[i] # 최솟값으로 교체
else:
dist += len[i] # 최솟값일때, dist에 거리 더해줌
if i == n-2:
total += min * dist # 계속 최솟값일때 거리 곱해주기
print(total)