245932026-02-12 21:51:51pirosmacska10Síkság (55)cpp17Hibás válasz 34/5514ms1724 KiB
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
#include <string>
#include <cmath>
#include <queue>

using namespace std;
using ll=long long;

const ll INF=LLONG_MAX;
int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n;
    cin >> n;
    vector<int> nums(n);
    for(int i = 0; i < n; i++) {
        cin >> nums[i];
    }   


    int bottom = nums[0];
    int l = 0;
    vector<int> cnt(100'001, 0);
    vector<int> last(100'001, -1);
    int maxx = 0;
    int max_start = 0;
    for(int r = 1; r < n; r++) {
        cnt[nums[r]]++;
        last[nums[r]] = r;
        if(nums[r] < bottom) {
            while (l <= last[bottom+1]) {
                cnt[nums[l++]]--;
            }
            bottom = nums[r];
        }
        else if(nums[r] > bottom+1) {
            while (l <= last[bottom]) {
                cnt[nums[l++]]--;
            }
            bottom = nums[r]-1;
        }
        if(r-l+1 > maxx) {
            maxx = r-l+1;
            max_start = l;
        }
    }
    cout << maxx << " " << max_start+1;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base34/55
1Elfogadva0/02ms1076 KiB
2Elfogadva0/03ms1076 KiB
3Hibás válasz0/22ms1076 KiB
4Hibás válasz0/22ms1076 KiB
5Hibás válasz0/21ms1076 KiB
6Elfogadva2/21ms1076 KiB
7Elfogadva3/31ms1080 KiB
8Elfogadva2/22ms1076 KiB
9Elfogadva3/32ms1076 KiB
10Elfogadva3/33ms1076 KiB
11Elfogadva3/33ms1076 KiB
12Elfogadva3/32ms1076 KiB
13Hibás válasz0/313ms1588 KiB
14Elfogadva3/38ms1588 KiB
15Elfogadva3/310ms1600 KiB
16Elfogadva3/313ms1588 KiB
17Hibás válasz0/313ms1724 KiB
18Hibás válasz0/314ms1600 KiB
19Hibás válasz0/313ms1588 KiB
20Hibás válasz0/313ms1600 KiB
21Elfogadva3/37ms1420 KiB
22Elfogadva3/310ms1444 KiB