154232025-02-19 13:43:45999Ádám és Éva együttcpp17Elfogadva 50/5071ms1792 KiB
// Source: https://usaco.guide/general/io

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

#define int long long

signed main() {
    int q,a,e;cin>>q>>a;
    vector<pair<int,int>> av(a);
    for(int i = 0;i<a;i++){
        int aa,b;
        cin>>aa>>b;
        av[i]={aa,b};
    }
    cin>>e;
    vector<pair<int,int>> ev(e);
    for(int i = 0;i<e;i++){
        int aa,b;
        cin>>aa>>b;
        ev[i]={aa,b};
    }sort(ev.begin(),ev.end());
    sort(av.begin(),av.end());
    int ie=0,ia=0;
    int ans=0;
    vector<pair<int,int>> v;
    int turns=0;
    while(ie<e&&ia<a){
        if(ev[ie].first>=av[ia].first&&ev[ie].first<av[ia].second||av[ia].first>=ev[ie].first&&av[ia].first<ev[ie].second){
            v.push_back({max(ev[ie].first,av[ia].first),min(ev[ie].second,av[ia].second)});
            ans++;
            if(ev[ie].second<av[ia].second)ie++;
            else ia++;
        }
        if(ev[ie].second<=av[ia].first){
            ie++;
        }
        else if(av[ia].second<=ev[ie].first){
            ia++;
        }
        turns++;
        if(turns>ia+ie)return 1;
    }
    cout<<ans<<endl;
    for(auto i:v)cout<<i.first<<' '<<i.second<<endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms508 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms580 KiB
7Elfogadva2/21ms544 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms316 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva2/21ms316 KiB
12Elfogadva2/21ms316 KiB
13Elfogadva2/21ms316 KiB
14Elfogadva2/21ms316 KiB
15Elfogadva2/21ms316 KiB
16Elfogadva2/268ms1612 KiB
17Elfogadva3/368ms1712 KiB
18Elfogadva3/361ms1600 KiB
19Elfogadva4/468ms1608 KiB
20Elfogadva4/471ms1708 KiB
21Elfogadva4/470ms1628 KiB
22Elfogadva4/468ms1792 KiB