145182025-01-13 16:42:37szasztundeÁdám és Éva együttcpp14Accepted 50/5071ms1456 KiB
#include <iostream>
#include <vector>
using namespace std;
struct par{
    int kezd,veg;
};
vector <par> adam,eva,eredm;

int main()
{
    int p,na,ne,k,v,m=0;
    cin>>p;
    cin>>na;
    for(int i=1;i<=na;i++)
    {
        cin>>k>>v;
        adam.push_back({k,v});
    }
    cin>>ne;
    for(int i=1;i<=ne;i++)
    {
        cin>>k>>v;
        eva.push_back({k,v});
    }
    int i=0,j=0;
    while(i<na && j<ne)
        if(adam[i].veg<=eva[j].kezd) i++;
        else if(eva[j].veg<=adam[i].kezd) j++;
        else
        if(adam[i].kezd<=eva[j].kezd)
        {
            if(adam[i].veg<=eva[j].veg)
            {
                eredm.push_back({eva[j].kezd,adam[i].veg});
                i++;
            }
            else
            {
                eredm.push_back({eva[j].kezd,eva[j].veg});
                j++;
            }
        }
        else
        {
            if(adam[i].veg>=eva[j].veg)
            {
                eredm.push_back({adam[i].kezd,eva[j].veg});
                j++;
            }
            else
            {
                eredm.push_back({adam[i].kezd,adam[i].veg});
                i++;
            }
        }
    cout<<eredm.size()<<endl;
    for(int i=0;i<eredm.size();i++) cout<<eredm[i].kezd<<" "<<eredm[i].veg<<endl;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/01ms316 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms328 KiB
7Accepted2/21ms508 KiB
8Accepted2/21ms508 KiB
9Accepted2/21ms316 KiB
10Accepted2/21ms508 KiB
11Accepted2/21ms316 KiB
12Accepted2/21ms316 KiB
13Accepted2/22ms316 KiB
14Accepted2/21ms316 KiB
15Accepted2/21ms508 KiB
16Accepted2/268ms1408 KiB
17Accepted3/368ms1456 KiB
18Accepted3/363ms1228 KiB
19Accepted4/468ms1408 KiB
20Accepted4/471ms1240 KiB
21Accepted4/468ms1456 KiB
22Accepted4/468ms1248 KiB