Submission

Status:

[P-SSSSSSSSSSSSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: Gump2011

Problemset: วันว่างๆ

Language: cpp

Time: 0.002 second

Submitted On: 2026-03-08 17:56:55

#include <bits/stdc++.h>
using namespace std;
int main() {
    ios::sync_with_stdio(0), cin.tie(0);

    int N;
    cin >> N;

    vector<pair<int,int>> v;

    for(int i = 0; i < N; i++) {
        int Mi;
        cin >> Mi;
        for(int j = 0; j < Mi; j++) {
            int s, e;
            cin >> s >> e;
            v.push_back({s, e});
        }
    }

    if(v.empty()) {
        cout << -1 << "\n";
        return 0;
    }

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

    vector<pair<int,int>> m;
    m.push_back(v[0]);
    for(int i = 1; i < v.size(); i++) {
        if(v[i].first <= m.back().second) {
            m.back().second = max(m.back().second, v[i].second);
        } else {
            m.push_back(v[i]);
        }
    }

    vector<pair<int,int>> free;
    for(int i = 1; i < m.size(); i++) {
        int l = m[i-1].second;
        int r = m[i].first;
        if(l < r) free.push_back({l, r});
    }

    if(free.empty()) {
        cout << -1 << "\n";
    } else {
        for(auto &f : free) {
            cout << f.first << " " << f.second << "\n";
        }
    }
}