반응형
1. 현재 도시의 가격(price[i])와 현재 최솟값(min) 비교
-> 현재 도시의 가격이 더 싸면 min = price[i]
2. 계산은 무조건 해야함
-> total_price = min * dist[i]
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
|
#include <iostream>
#define ll long long
using namespace std;
ll dist[100000];
ll price[100000];
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n;
cin >> n;
for (int i = 0; i < n-1; i++)
cin >> dist[i];
for (int i = 0; i < n; i++)
cin >> price[i];
int minIdx = 0;
ll min = price[0];
ll total_price = 0;
for (int i = 0; i < n; i++) {
if (price[i] < min)
min = price[i];
total_price += min * dist[i];
}
cout << total_price;
}
|
cs |
반응형