76492024-01-10 10:35:12AblablablaTalálkozáscpp17Hibás válasz 0/55125ms5864 KiB
#include <bits/stdc++.h>

using namespace std;

typedef pair<int, int> pii;

const int INF = 2e9 + 7;
const int MAXN = 1e5 + 5;

int main(){
    int n;
    cin >> n;

    vector<int> jon(MAXN);
    vector<int> megy(MAXN);
    int maxi = 0;
    for(int i = 0; i < n; i++){
        int a, b;
        cin >> a >> b;

        jon[a]++;
        megy[b]++;

        maxi = max(maxi, b);
    }

    int elso = 0, masodik = 1;
    int benne = jon[1];
    int cel = n / 2 + (n % 2);
    int mini = INF;
    pii megoldas;
    while(elso <= masodik && masodik < maxi){
        cout << elso << " " << masodik << " : " << benne << "\n";
        if(benne >= cel){
            if(mini > masodik - elso + 1){
                mini = masodik - elso + 1;
                megoldas = {elso, masodik};
            }
            benne -= megy[elso];
            elso++;
        } else if(benne < cel){
            masodik++;
            benne += jon[masodik];
        }
    }

    cout << mini << "\n" << megoldas.first << " " << megoldas.second << "\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/55
1Hibás válasz0/04ms3168 KiB
2Hibás válasz0/0122ms3508 KiB
3Hibás válasz0/23ms3828 KiB
4Hibás válasz0/23ms3820 KiB
5Hibás válasz0/23ms4184 KiB
6Hibás válasz0/26ms4244 KiB
7Hibás válasz0/26ms4588 KiB
8Hibás válasz0/36ms4596 KiB
9Hibás válasz0/38ms4644 KiB
10Hibás válasz0/38ms4628 KiB
11Hibás válasz0/334ms4632 KiB
12Hibás válasz0/335ms4780 KiB
13Hibás válasz0/335ms4876 KiB
14Hibás válasz0/341ms4832 KiB
15Hibás válasz0/341ms5088 KiB
16Hibás válasz0/341ms5388 KiB
17Hibás válasz0/341ms5408 KiB
18Hibás válasz0/375ms5500 KiB
19Hibás válasz0/3104ms5444 KiB
20Hibás válasz0/398ms5596 KiB
21Hibás válasz0/3125ms5664 KiB
22Hibás válasz0/3122ms5864 KiB