농담곰담곰이의곰담농

2979. 트럭 주차

by 브이담곰

 

 

2979번: 트럭 주차

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

www.acmicpc.net

 

✔ 유형 : 구현

✔ 문제 풀이 : 입력 범위가 작다는 것을 파악하고 For문을 이용해 구현한다.

 

⬇ 코드 보기

더보기
// Online C++ compiler to run C++ program online
#include <bits/stdc++.h>
using namespace std;

int main() {
    int A;
    int B;
    int C;
    int timeToFrom[3][2];
    int timetable[100] = {0,};
    int total = 0;
    //input 주차요금 A,B,C
    scanf("%d %d %d", &A, &B, &C);
    
    //input 차량 입차, 출차 시간
    for(int i = 0 ; i < 3 ; i++)
    {
        scanf("%d %d", &timeToFrom[i][0],  &timeToFrom[i][1]);
    }
    
    // 무식하게 풀 수 있다면 무식하게 풀어보기.
    // 범위가 얼마 안되기 때문에 for문을 사용해도 괜찮다. 어차피 O(n)
    // 1. Time Table에 차가 몇대 머물렀는지 증감하여 기록
    for(int i = 0; i < 3 ; i ++)
    {
        for(int j = timeToFrom[i][0]; j < timeToFrom[i][1]; j++)
        {
            timetable[j] ++;
        }
    }
    
    //2. 주차요금 계산 
    for(int i = 0; i < 100; i++)
    {
        switch(timetable[i])
        {
        case 0 :
            break;
        case 1 :
            total += A;
            break;
        case 2 :
            total += (B*2);
            break;
        case 3 :
            total += (C*3);
            break;
        default:
            break;
        }
    }
    
    cout << total << endl;
    return 0;
}

'Coding Test > Baekjoon' 카테고리의 다른 글

11655.ROT13  (1) 2023.11.21
1159.농구 경기  (0) 2023.11.21
10988.팰린드롬인지 확인하기  (0) 2023.11.21
10808.알파벳 개수  (0) 2023.11.21
2309. 일곱 난쟁이  (0) 2023.11.21

블로그의 정보

농담곰담곰이의곰담농

브이담곰

활동하기