알고리즘

[알고리즘] 백준 11000 - 강의실 배정

blueberrysoda 2024. 8. 6. 23:15
#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>
using namespace std;

int N;
vector<pair<int, int>> V;
priority_queue<int, vector<int>, greater<int>> PQ;

int main(){
    cin >> N;
    int s, t;
    for(int i=0; i<N; i++){
        cin >> s >> t;
        V.push_back({s, t});
    }

    sort(V.begin(), V.end());

    PQ.push(V[0].second);

    for(int i=1; i<N; i++){
        PQ.push({V[i].second});
        if(PQ.top() <= V[i].first){
            PQ.pop();
        }
    }

    cout << PQ.size() << "\n";

    return 0;
}