[BOJ] 13305 주유소

문제

me

import sys
input = sys.stdin.readline
N=int(input())
lines=list(map(int,input().split()))
cities=list(map(int,input().split()))

cost=0
recent_fuel=int(1e9) # min 개념 이용
for i in range(N-1):
    if recent_fuel > cities[i]: # 현재 값이 최근 구매 값보다 싸면 주유값 바꿔주고
        recent_fuel=cities[i]
    cost+=recent_fuel*lines[i] # 도시마다 이전의 값을 참고해서 주유 삼
print(cost)

지역에서 전 지역을 통해 주유할 수 있는 방식
min 방식이 호다닥 떠올랐다.
각 도시에서만 구매하고 그 값만 최소를 유지하면 되지 않나 했다.
그리디..문제 중에 제일 빨리 해결점을 찾은 문제다. (감격)

좋은 웹페이지 즐겨찾기