반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 공모주청약
- 사회조사분석사 2급 독학
- DFS
- 사회조사분석사2급실기신청꿀팁
- 백준
- 사회조사분석사 2급 기출문제집
- BFS
- 그리디
- 사회조사분석사 2급
- 알고리즘
- 공모주
- 사회조사분석사 2급 접수
- 백준 알고리즘
- 사회조사분석사 2급 필기 요약정리
- 벽부수고이동하기 파이썬
- 시물레이션
- 너비우선탐색
- 파이썬 정렬
- 현대엔지니어링
- 사회조사분석사2급실기신청
- 오미크론 자가격리
- 사회조사분석사 2급 필기 시험시간
- 현대엔지니어링 수요예측
- 정렬
- 공모주 청약
- 머신러닝
- 사이킷런
- 2월공모주
- 사회조사분석사 2급 공부방법
- 사회조사분석사 2급 필기 공부방법
Archives
- Today
- Total
세상을 바꾸는 데이터
[백준 13305번] 주유소 - 파이썬 본문
문제 링크:
https://www.acmicpc.net/problem/13305
문제 풀이:
이 문제의 핵심은 거리에 상관없이 도시마다 최소한의 가격으로 도시를 지나가야 한다. (현재 상황에서 지금 당장 좋은 것만 고르는 기법인 그리디 알고리즘 문제에 해당)
- 전 주유소보다 현 주유소가 가격이 싸다면 현 주유소에서 충전 (처음 기름 충전은 첫 도시에서 해야 하므로 반복문 전에 변수 m을 만든다)
- 이를 토대로 반복문을 이용하여 도로를 건너야 한다.
# 13305번 주유소
n = int(input())
city_road = list(map(int, input().split()))
liter_price = list(map(int, input().split()))
ans = 0
m = liter_price[0]
# 현 지역의 주유소 가격이 전 지역의 주유소 가격보다 저렴하면 현 지역에서 주유
for i in range(n-1):
if liter_price[i] < m:
m = liter_price[i]
ans += m * city_road[i]
print(ans)
728x90
반응형
'PS Study > BOJ(백준)' 카테고리의 다른 글
[백준 1339번] 단어수학 - 파이썬 (0) | 2022.01.23 |
---|---|
[백준 1789번] 수들의 합 - 파이썬 (2) | 2022.01.21 |
[백준 1946번] 신입사원 - 파이썬 (2) | 2022.01.21 |
[백준 10610번] 30 - 파이썬 (2) | 2022.01.20 |
[백준 10162번] 전자레인지 - 파이썬 (0) | 2022.01.20 |
Comments