# 생각

1부터 100까지의 시간대를 배열로 두고 각 시간에 해당하는 차를 카운트 해준다(key, value)

 

 

# 전체 코드

#include <bits/stdc++.h>
using namespace std;

void fastIO() { ios::sync_with_stdio(false); cin.tie(nullptr); }

int cnt[111];

int main()
{
	fastIO();
	int a, b, c;
	cin >> a >> b >> c;
	for (int i = 0; i < 3; i++)
	{
		int t1, t2;
		cin >> t1 >> t2;
		for (int j = t1; j < t2; j++)
		{
			cnt[j]++;
		}
	}
	int ans = 0;
	for (int j = 1; j < 100; j++)
	{
		if (cnt[j])
		{
			if (cnt[j] == 1) ans += a;
			else if (cnt[j] == 2) ans += b * 2;
			else if (cnt[j] == 3) ans += c * 3;
		}
	}
	cout << ans;
}

 


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

 

2979번: 트럭 주차

첫째 줄에 문제에서 설명한 주차 요금 A, B, C가 주어진다. (1 ≤ C ≤ B ≤ A ≤ 100) 다음 세 개 줄에는 두 정수가 주어진다. 이 정수는 상근이가 가지고 있는 트럭이 주차장에 도착한 시간과 주차장

www.acmicpc.net

 

'Algorithm > BOJ' 카테고리의 다른 글

[BOJ] 1159_농구 경기.cpp  (0) 2022.05.28
[BOJ] 10988_팰린드롬인지 확인하기.cpp  (0) 2022.05.28
[BOJ] 10808_알파벳 개수.cpp  (0) 2022.05.28
[BOJ] 2309_일곱 난쟁이.cpp  (0) 2022.05.28
[BOJ] 2146_다리 만들기 with cpp  (0) 2022.03.10

+ Recent posts