42762023-03-21 12:24:35gkataÁdám és Éva együttcpp17Elfogadva 50/5039ms6116 KiB
#include <iostream>
#include <queue>
#define ll long long

using namespace std;

//ifstream cin("a.in");
//ofstream cout("a.out");

struct adat
{
    int k,v;
};

vector <pair<ll,ll>>m;
vector <adat>a,e;

ll n,A,E,i,j;

int main()
{
    cin>>n;

    cin>>A;
    a.resize(A+1);

    for(i=1;i<=A;++i)
    {
        cin>>a[i].k>>a[i].v;
    }

    cin>>E;
    e.resize(E+1);
    for(i=1;i<=E;++i)
    {
        cin>>e[i].k>>e[i].v;
    }

    i=1;
    j=1;

    while(i<=A && j<=E)
    {
        if(e[j].v <= a[i].k) ++j;
        else if(a[i].v <= e[j].k) ++i;
        else if(e[j].k<= a[i].k)
            {
                if(e[j].v>=a[i].v)
                {
                    m.push_back({a[i].k , a[i].v});
                    ++i;
                }
                else
                {
                    m.push_back({a[i].k , e[j].v});
                    ++j;
                }
            }
            else
            {
                if(a[i].v<=e[j].v)
                {
                    m.push_back({e[j].k , a[i].v});
                    ++i;
                }
                else
                {
                    m.push_back({e[j].k , e[j].v});
                    ++j;
                }
            }
    }

    cout<<m.size()<<"\n";
    for(auto &f:m) cout<<f.first<<" "<<f.second<<"\n";

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1872 KiB
2Elfogadva0/03ms2068 KiB
3Elfogadva2/23ms2148 KiB
4Elfogadva2/23ms2416 KiB
5Elfogadva2/23ms2496 KiB
6Elfogadva2/22ms2744 KiB
7Elfogadva2/23ms3108 KiB
8Elfogadva2/22ms2944 KiB
9Elfogadva2/22ms3012 KiB
10Elfogadva2/22ms3212 KiB
11Elfogadva2/23ms3352 KiB
12Elfogadva2/23ms3556 KiB
13Elfogadva2/23ms3584 KiB
14Elfogadva2/23ms3672 KiB
15Elfogadva2/23ms3824 KiB
16Elfogadva2/237ms5676 KiB
17Elfogadva3/337ms5888 KiB
18Elfogadva3/335ms6116 KiB
19Elfogadva4/437ms6052 KiB
20Elfogadva4/439ms6020 KiB
21Elfogadva4/439ms5992 KiB
22Elfogadva4/437ms5992 KiB