728x90
반응형
목차
https://www.acmicpc.net/problem/2170
문제
문제 구현 아이디어
두 점의 범위가 억이 넘어가므로 일단 공간 복잡도상으로 배열은 사용하지 못한다는 것을 알 수 있다.
따라서 갱신을 하며 누적해주는 식으로 풀었다.
코드 구현
#include <iostream>
#include <vector>
#include<map>
#include<math.h>
#include <algorithm>
typedef long long ll;
using namespace std;
vector<pair< ll, ll>>v;
ll N, x, y;
ll total = 0;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin >> N;
for (int i = 0; i < N; i++) {
cin >> x >> y;
v.push_back({ x, y });
}
sort(v.begin(), v.end());
ll front = v[0].first;
ll back = v[0].second;
for (int i = 1; i < v.size(); i++) {
if (back < v[i].first) {
total += back - front;
back = v[i].second;
front = v[i].first;
}
else if (back >= v[i].first && back <= v[i].second) {
back = v[i].second;
}
}
total += back - front;
cout << total;
return 0;
}
반응형
'백준 문제풀이' 카테고리의 다른 글
[백준][dp] 2565 전깃줄 c++ 구현 (0) | 2024.09.18 |
---|---|
[백준][스위핑] 1931 회의실 배정 c++구현 (0) | 2024.09.15 |
[백준][이분탐색] 2632 피자판매 c++구현 (0) | 2024.08.19 |
[백준][구현] 15685 드래곤 커브 c++구현 (0) | 2024.08.17 |
[백준][구현][백트래킹] 17825 주사위 윷놀이 c++구현 (0) | 2024.08.17 |