Java
[백준 13305] 주유소 (JAVA)
iheeeee6-6
2023. 3. 22. 22:03
728x90
https://www.acmicpc.net/problem/13305
13305번: 주유소
표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1
www.acmicpc.net
가장 처음 도시에서는 무조건 주유를 해야한다는 점,
그 이후로는 가장 싼 곳에서 주유를 해서 가면 된다~
+ int로는 범위가 넘기 때문에 long으로 해줘야 한다!
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine());
long[] distance=new long[n-1];
for(int i=0;i<n-1;i++) {
distance[i]=Long.parseLong(st.nextToken());
}
st = new StringTokenizer(br.readLine());
long[] cost=new long[n];
for(int i=0;i<n;i++) {
cost[i]=Long.parseLong(st.nextToken());
}
long min =cost[0];
long result=0;
for(int i=0;i<n-1;i++) {
if(min>cost[i])
min=cost[i];
result+=min*distance[i];
}
System.out.println(result);
}
}