★그리디알고리즘★주유소[백준 파이썬 13305번]
2022. 11. 1. 11:39
728x90
반응형
https://www.acmicpc.net/problem/13305
import sys
a = int(sys.stdin.readline())
b = list(map(int ,sys.stdin.readline().split()))
c = list(map(int, sys.stdin.readline().split()))
price = c[0]*b[0] #초기값
idx = c[0]
#print(idx)
for i in range(1, len(c)-1):
#print(c[i])
if c[i] < idx:
# print("idx : {}".format(idx))
idx = c[i]
price += idx*b[i]
else:
price += idx*b[i]
print(price)
노드가 있을 때
0 - 0 - 0- 0
1번째 노드의 초기값 설정을 해준다.
price = c[0] *b[0] ==> 리터당 기름값* (1번째 To 2번째 길이)
for문을 통해 리터당 기름값이 싼거에 대해서 idx변수로 치환시킨다.
--> 만약 기름값이 앞에 도시보다 싸다? idx에 싼곳의 기름값 넣는다.
price 에 기름값과 도시간 거리로 가격 더하고
-->기름값이 앞의 도시가 싸다! idx 변환 시키지 말고 price에 기름값과 도시간 거리 곱하여 가격을 더한다.
728x90
반응형
'Python(백준) > 그리디알고리즘' 카테고리의 다른 글
★VER2.0★DEQUE 활용★누적합★그리디알고리즘★ATM[백준 파이썬 11399번] (0) | 2023.01.01 |
---|---|
★sorted(a, key = lambda x : x[0])★그리디알고리즘★회의실배정[백준 파이썬 1931번] (0) | 2022.11.02 |
★데이터타입변환map★re활용한 split()★잃어버린 괄호[백준 파이썬 1541번] (0) | 2022.11.01 |
★그리디알고리즘★ 동전 0 [백준 파이썬 11047번] (0) | 2022.11.01 |