241202 라면 사기 (Small)

Jongleee·2024년 12월 2일
0

TIL

목록 보기
745/816
public static void main(String[] args) throws IOException {
	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	int n = Integer.parseInt(br.readLine());
	int[] array = new int[n];

	StringTokenizer st = new StringTokenizer(br.readLine());
	for (int i = 0; i < n; i++) {
		array[i] = Integer.parseInt(st.nextToken());
	}

	int totalSum = 0;

	for (int i = 0; i < n - 2; i++) {
		int minAdjacent = Math.min(array[i], array[i + 1]);

		if (array[i + 1] > array[i + 2]) {
			if (array[i] > array[i + 1] - array[i + 2]) {
				int extraPairs = Math.min(array[i] - array[i + 1] + array[i + 2], array[i + 2]);

				totalSum += extraPairs * 2;
				array[i + 2] -= extraPairs;
			}
		} else {
			totalSum += minAdjacent * 2;
			array[i + 2] -= minAdjacent;
		}

		totalSum += array[i] * 3 + minAdjacent * 2;
		array[i + 1] -= minAdjacent;
	}

	totalSum += Math.min(array[n - 2], array[n - 1]) * 5;
	totalSum += Math.abs(array[n - 2] - array[n - 1]) * 3;

	System.out.println(totalSum);
}

출처:https://www.acmicpc.net/problem/18185

0개의 댓글

관련 채용 정보