728x90
https://www.acmicpc.net/problem/2979
2979번: 트럭 주차
첫째 줄에 문제에서 설명한 주차 요금 A, B, C가 주어진다. (1 ≤ C ≤ B ≤ A ≤ 100) 다음 세 개 줄에는 두 정수가 주어진다. 이 정수는 상근이가 가지고 있는 트럭이 주차장에 도착한 시간과 주차장
www.acmicpc.net
import java.util.*;
import java.io.*;
public class Main {
static int A, B, C;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
A = Integer.parseInt(st.nextToken()); // 1대 주차시 1분에 한 대 가격
B = Integer.parseInt(st.nextToken()); // 2대 주차시 1분에 한 대 가격
C = Integer.parseInt(st.nextToken()); // 3대 주차시 1분에 한 대 가격
int answer = 0;
int[] arr = new int[101]; // 1초부터 100초까지 있기 때문에
for (int i = 0; i < 3; i++) {
st = new StringTokenizer(br.readLine());
int start = Integer.parseInt(st.nextToken());
int end = Integer.parseInt(st.nextToken());
for (int j = start; j < end; j++) { // end는 나가는 시간이니 +1을 해주면 안됌
arr[j] += 1;
}
}
for (int i = 0; i < arr.length; i++) {
if (arr[i] == 1) {
answer += A;
} else if (arr[i] == 2) {
answer += B * 2;
} else if (arr[i] == 3) {
answer += C * 3;
}
}
System.out.print(answer);
}
}
회고
- 브론즈 문제였지만 구현 문제를 많이 풀어보지 않아 생각하는데 오랜 시간이 걸렸다.
- 구현 문제도 꾸준히 자주 풀어야 할 것 같다.
'Algorithm Study > BaekJoon (JAVA)' 카테고리의 다른 글
백준 2167_ 2차원 배열의 합_JAVA (0) | 2024.04.15 |
---|---|
백준 14467_소가 길을 건나간 이유 1_JAVA (0) | 2024.04.15 |
백준 7562_나이트의 이동_JAVA (0) | 2024.04.07 |
백준 2667_단지번호붙이기_JAVA (1) | 2024.04.03 |
백준 2468_안전영역_JAVA (0) | 2024.04.03 |