백준 알고리즘(C++)

백준 14469번 소가 길을 건너간 이유 3 ( C++ )

coding232624 2024. 9. 3. 14:30

문제

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

 

해설

기본적인 라인 스위핑 문제

크게 어려운 부분은 없었음

 

코드

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
29
#include <iostream>
#include <algorithm>
#include <vector>
 
using namespace std;
int n, total_time, time_start, time_end;
vector<pair<intint>> v;
 
int main()
{
  cin >> n;
  for (int i = 0; i < n; i++)
  {
    cin >> time_start >> time_end;
    v.push_back({time_start, time_end});
  }
  sort(v.begin(), v.end());
  for (int i = 0; i < n; i++)
  {
    if (total_time < v[i].first)
    {
      total_time = v[i].first + v[i].second;
    }
    else
      total_time += v[i].second;
  }
  cout << total_time;
  return 0;
}
cs