Submission

Status:

[PPPPPPPPPPPPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: navysrimuang

Problemset: วันว่างๆ

Language: cpp

Time: 0.015 second

Submitted On: 2026-03-13 11:01:29

#include<bits/stdc++.h>
using namespace std;

int main(){
    
    cin.tie(0)->sync_with_stdio(0);
    int n;
    cin >> n;
    vector<pair<int,int>> v;
    for(int i = 0;i<n;i++){
        int m;
        cin >> m;
        for(int j = 0;j<m;j++){
            int a,b;
            cin >> a >> b;
            v.push_back({a,b});
        }
    }

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

    vector<pair<int,int>> merged;
    for(auto [l,r] : v){
        if(merged.empty() || merged.back().second < l){
            merged.push_back({l,r});
        }else{
            merged.back().second = max(merged.back().second,r);
        }
    }

    if(merged.size() == 1) cout << -1 << "\n";
    else{
        cout << merged[0].second << " ";
        for(int i = 1;i<merged.size()-1;i++){
          cout << merged[i].first << " " << merged[i].second << " ";
        }
        cout << merged[merged.size() - 1].first << " ";
    }



    return 0;
}