티스토리 뷰

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

 

14469번: 소가 길을 건너간 이유 3

이웃 농장의 소가 길을 마구잡이로 건너는 것에 진절머리가 난 존은 극단의 결정을 내린다. 농장 둘레에 매우 큰 울타리를 짓는 것이다. 이렇게 하면 근처 농장 출신의 소가 들어올 일이 거의 없

www.acmicpc.net

 

(도착시간, 검문시간)을 pair 형태로 저장하고 도착시간 기준 오름차순 정렬한다.

도착시간+검문시간이 다음 소의 도착시간보다 작다면 현재소와 다음소 사이의 공백기간이 생기고,

도착시간+검문시간이 다음 소의 도착시간보다 크거나 같다면 다음 소는 그만큼 기다려야한다.

 

 

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main()
{
    int n;
    cin >> n;
    vector<pair<long long, long long>> v;
    v.resize(n);
    for(int i = 0; i < n; i++)
    {
        cin >> v[i].first >> v[i].second;
    }

    // 도착시간 기준 오름차순 정렬
    sort(v.begin(), v.end());

    long long time = v[0].first + v[0].second;
    for(int i = 1; i < n; i++)
    {
        if(time < v[i].first)
        {
            time = v[i].first + v[i].second;
        }
        else
        {
            time = time + v[i].second;
        }
    }

    cout << time;
}

'PS' 카테고리의 다른 글

백준 1448. 삼각형 만들기  (0) 2021.08.24
백준 13417. 카드 문자열  (0) 2021.08.24
백준 13413. 오셀로 재배치  (0) 2021.08.23
백준 19939. 박 터뜨리기  (0) 2021.08.23
백준 1052. 물병  (0) 2021.08.22
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함