130532025-01-05 12:22:17szabelrTalálkozáscpp17Hibás válasz 50/5568ms1080 KiB
#include <iostream>
using namespace std;
int erk[100001]{ 0 };
int tav[100001]{ 0 };
int main()
{
    int n, max=0,a,b;
    cin >> n;
    for (int i = 1; i <= n; i++) {
        cin >> a >> b;
        erk[a]++;
        tav[b]++;
        if (b > max)
            max=b;
        
    }
    /*for (int i = 1; i <= max; i++) {
        cout << erk[i] << " ";
    }
    cout << endl;
    for (int i = 1; i <= max; i++) {
        cout << tav[i] << " ";
    }*/
    int kez = 1, veg=0, ossz = 0,kezjo,vegjo,db=1000001,joe=1;
    while (kez <= max) {
        while (ossz < ((n + 1) / 2) && veg < max) {
            veg++;
            ossz += erk[veg];                
        }
        if (veg == max and ossz < (n + 1) / 2) {
            joe = 0;
        }
        //cout << "veg:" << veg << " kez:" << kez << endl;
        //cout << joe << endl;
        if (veg - kez+1 < db and joe==1) {
            db = veg - kez+1;
            kezjo = kez;
            vegjo = veg;
        }
        ossz = ossz-tav[kez];
        //cout << "ossz:" << ossz << endl;
        kez++;
        
    }
    cout << db << endl;
    cout << kezjo << " " << vegjo;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/55
1Elfogadva0/01ms500 KiB
2Elfogadva0/065ms1080 KiB
3Hibás válasz0/21ms320 KiB
4Elfogadva2/21ms320 KiB
5Elfogadva2/21ms500 KiB
6Elfogadva2/21ms320 KiB
7Elfogadva2/21ms320 KiB
8Elfogadva3/31ms500 KiB
9Elfogadva3/31ms320 KiB
10Elfogadva3/31ms332 KiB
11Elfogadva3/34ms568 KiB
12Elfogadva3/37ms700 KiB
13Elfogadva3/37ms668 KiB
14Elfogadva3/313ms668 KiB
15Elfogadva3/313ms688 KiB
16Elfogadva3/313ms796 KiB
17Elfogadva3/313ms808 KiB
18Elfogadva3/320ms948 KiB
19Hibás válasz0/368ms648 KiB
20Elfogadva3/359ms320 KiB
21Elfogadva3/364ms1080 KiB
22Elfogadva3/364ms1080 KiB