트럭의 수에 따른 주차 비용 A, B, C가 주어지고, 각각의 트럭이 주차된 시간이 주어졌을 때, 총 주차 요금을 구하는 문제.
주차된 트럭의 수를 시간에 따라 저장한 배열 arr
를 선언하여, 트럭 세 대의 주차 정보를 저장한 뒤, arr
를 순회하며 트럭의 수에 따른 각각의 비용의 총합을 계산하였다.
트럭이 주차된 시간의 구간을 설정하는 과정에서 이상~이하
가 아닌 이상~미만
으로 두어야 함에 주의하자.
#include <bits/stdc++.h>
using namespace std;
int A, B, C;
int arr[101];
int main() {
cin >> A >> B >> C;
for (int i = 0; i < 3; i++) {
int a, b;
cin >> a >> b;
for (int j = a; j < b; j++) arr[j] += 1; // j <= b가 아님에 주의
}
int sum = 0;
for (int i = 1; i < 101; i++) {
if (arr[i] == 1) sum += A;
else if (arr[i] == 2) sum += 2 * B;
else if (arr[i] == 3) sum += 3 * C;
}
cout << sum << '\n';
return 0;
}