78442024-01-11 13:03:27madvirFasor (40)cpp17Hibás válasz 0/40131ms18844 KiB
/*#include <iostream>
#include <set>

using namespace std;

int main() {
	int n, tart, _max=0, kezd;
	cin >> n;
	int a[n];
	for(int i=0; i<n; i++) {
		cin >> a[i];
	}
	multiset<int> megy;
	for(int i=0; i<n; i++) {
		megy.insert(a[i]);
		tart=i+1;
		megy.insert(a[tart]);
		tart++;
		while(*megy.rbegin()-*megy.begin()<=1) {
			megy.insert(a[tart]);
			tart++;
		}
		if(megy.size()-1>_max) {
			_max=megy.size()-1;
			kezd=i+1;
		}
		megy.clear();
	}

	cout << _max << " " << kezd;


    return 0;
}*/

#include <bits/stdc++.h>

using namespace std;

int main(){

    int n; cin >> n;
    vector<int> v;
    for (int i = 0; i < n; i++){
        int x; cin >> x; v.push_back(x);
    }

    int i = 0, j = 0, meg = 0, megi = 0;
    multiset<int> s;

    s.insert(v[0]);

    while (i < n && j < n){
        while (*s.rbegin() - *s.begin() <= 1){
            j++;
            s.insert(v[j]);
        }
        if (s.size()-1 > meg){
            meg = s.size()-1; megi = i+1;
        }
        s.erase(s.find(v[i]));
        i++;
    }

    cout << meg << " " <<   megi;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/40
1Hibás válasz0/03ms1960 KiB
2Hibás válasz0/06ms2320 KiB
3Hibás válasz0/23ms2300 KiB
4Hibás válasz0/23ms2472 KiB
5Hibás válasz0/23ms2652 KiB
6Hibás válasz0/22ms2728 KiB
7Hibás válasz0/23ms2856 KiB
8Hibás válasz0/23ms2988 KiB
9Hibás válasz0/26ms3304 KiB
10Hibás válasz0/27ms3264 KiB
11Hibás válasz0/28ms4152 KiB
12Hibás válasz0/24ms3392 KiB
13Hibás válasz0/259ms6228 KiB
14Hibás válasz0/263ms10008 KiB
15Hibás válasz0/2112ms12448 KiB
16Hibás válasz0/2118ms9976 KiB
17Hibás válasz0/2127ms12580 KiB
18Hibás válasz0/2114ms7896 KiB
19Hibás válasz0/2118ms14288 KiB
20Hibás válasz0/252ms13404 KiB
21Hibás válasz0/2131ms18844 KiB
22Hibás válasz0/283ms5492 KiB