반응형

https://www.acmicpc.net/problem/13305

 

13305번: 주유소

표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1

www.acmicpc.net

 

주유소를 방문할 때마다 최소 가격을 업데이트해주고,

그 가격으로 다음 주유소로 이동할 수 있는 만큼 기름을 넣어주었습니다.

 

#include <iostream>
#include <algorithm>
using namespace std;
#define MAX 100000
#define INF 2147483647

int n;
int dist[MAX - 1];
int price[MAX];
int mn = INF;
long long ans = 0;

int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL); cout.tie(NULL);

	cin >> n;
	for (int i = 0; i < n - 1; i++) {
		cin >> dist[i];
	}

	for (int i = 0; i < n; i++) {
		cin >> price[i];
	}

	for (int i = 0; i < n - 1; i++) {
		mn = min(mn, price[i]);
		ans += (long long)mn * dist[i];
	}
	cout << ans;
}
반응형

'Algorithm' 카테고리의 다른 글

백준 1451 : 직사각형으로 나누기  (0) 2021.11.19
백준 4948 : 베르트랑 공준  (0) 2021.11.19
백준 17140 : 이차원 배열과 연산  (0) 2021.11.19
백준 19952 : 인성 문제 있어??  (0) 2021.11.19
백준 1309 : 동물원  (0) 2021.11.19

+ Recent posts