코깽이의 코딩일기

Java 백준 13305 주유소 본문

PS/백준

Java 백준 13305 주유소

코깽이 2024. 2. 5. 12:04
반응형

백준 링크

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

 

13305번: 주유소

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

www.acmicpc.net


문제

입력

출력

 

입출력 예시

 


제출한 코드

import java.io.*;
import java.util.*;

public class Main {

	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		// 도시 수
		int t = Integer.parseInt(br.readLine());
		long[] distance = new long[t - 1];
		long[] cost = new long[t];
		// 도시간 거리
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");

		for (int i = 0; i < t - 1; i++) {
			distance[i] = Long.parseLong(st.nextToken());
		}
		// 도시별 기름 값
		st = new StringTokenizer(br.readLine(), " ");

		for (int i = 0; i < t - 1; i++) {
			cost[i] = Long.parseLong(st.nextToken());
		}
		// 로직 시작
		long sum = 0;
		long min = cost[0];
		
		// 최소값이 갱신되는 경우에만 수정
		for (int i = 0; i < t - 1; i++) {
			if (cost[i] < min) {
				min = cost[i];
			}
			sum += min * distance[i];
		}
		System.out.println(sum);
	}
}

 

1. 마지막 도시의 기름값은 고려하지 않고 로직을 진행한다.

2. 도시별 기름값을 확인하면서 거리 * 가장 싼 기름값을 더해준다.

반응형

'PS > 백준' 카테고리의 다른 글

Java 백준 16165 걸그룹 마스터  (0) 2024.02.05
Java 백준 2866 문자열 잘라내기  (1) 2024.02.05
Java 백준 14675 단절점과 단절선  (2) 2024.01.27
Java 백준 12927 배수 스위치  (0) 2024.01.27
Java 백준 25379- 피하자  (0) 2024.01.24