[백준] 주유소_13305번
[백준] 주유소
문제
링크 : BOJ
풀이
1km 당 1리터의 기름을 사용할 때 주유소에서 리터당 판매하는 가격이 주어지고,
주유소와 주유소 사이의 거리가 주어질 때 최소값을 구하는 문제이다.
주유소를 들릴 때, 이전 리터당 가격보다 적을 때만 값을 계산해준다.
아니라면 이전 리터당 가격을 그대로 이용한다.
- 시작 가격은 무조건 가격에 포함되므로 다음 주유소의 거리를 계산해서 넣어준다.
- 시작 가격이 다음 가격보다 작을 때, 가격을 바꿔주고 거리를 계산해서 누적해준다.
n = int(input())
d = list(map(int, input().split()))
v = list(map(int, input().split()))
start = v[0]
result = start * d[0]
for i in range(1, n-1):
if start >= v[i]:
start = v[i]
result += start * d[i]
print(result)