27862023-01-24 20:07:18bzsofiaÁdám és Éva együttcpp11Elfogadva 50/5039ms5472 KiB
#include <iostream>
#include <vector>

using namespace std;

struct adat
{
    int kezd, veg;
};

int i, j, eva, adam, n;
vector <pair <int, int>> idopont;

int main()
{
    cin>>n;

    cin>>eva;
    vector <adat> e(eva+1);
    for (i=1; i<=eva; ++i)
    {
        cin>>e[i].kezd>>e[i].veg;
    }

    cin>>adam;
    vector <adat> a(adam+1);
    for(i=1; i<=adam; ++i)
    {
        cin>>a[i].kezd>>a[i].veg;
    }

    i=1;
    j=1;
    while (i<=eva && j<=adam)
    {
        if (e[i].veg<=a[j].kezd) ++i;
        else if (a[j].veg<=e[i].kezd) ++j;
        else if (e[i].kezd<=a[j].kezd)
        {
            if (e[i].veg>=a[j].veg)
            {
                idopont.push_back({a[j].kezd, a[j].veg});
                ++j;
            }else
            {
                idopont.push_back({a[j].kezd, e[i].veg});
                ++i;
            }
        }else
        {
            if (e[i].veg<=a[j].veg)
            {
                idopont.push_back({e[i].kezd, e[i].veg});
                ++i;
            }else
            {
                idopont.push_back({e[i].kezd, a[j].veg});
                ++j;
            }
        }
    }

    cout<<idopont.size()<<"\n";
    for (auto &e:idopont)
    {
        cout<<e.first<<" "<<e.second<<"\n";
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1808 KiB
2Elfogadva0/02ms2008 KiB
3Elfogadva2/22ms2212 KiB
4Elfogadva2/22ms2320 KiB
5Elfogadva2/22ms2284 KiB
6Elfogadva2/22ms2532 KiB
7Elfogadva2/22ms2616 KiB
8Elfogadva2/22ms2824 KiB
9Elfogadva2/22ms2900 KiB
10Elfogadva2/22ms2896 KiB
11Elfogadva2/22ms3028 KiB
12Elfogadva2/22ms3276 KiB
13Elfogadva2/22ms3476 KiB
14Elfogadva2/22ms3700 KiB
15Elfogadva2/22ms3764 KiB
16Elfogadva2/237ms5064 KiB
17Elfogadva3/337ms4956 KiB
18Elfogadva3/334ms5080 KiB
19Elfogadva4/435ms5160 KiB
20Elfogadva4/439ms5172 KiB
21Elfogadva4/437ms5216 KiB
22Elfogadva4/437ms5472 KiB