Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: C12

Problemset: Consecutive Subsequence

Language: cpp

Time: 0.002 second

Submitted On: 2026-01-07 10:58:09

#include <bits/stdc++.h>
using namespace std;

#define f first
#define s second
#define pii pair<ll,ll>
#define puii pair<ull,ull>
#define piii pair<ll,pii>
#define ll long long
#define ull unsigned long long
#define mp make_pair
 
#define mpiii(a,b,c) make_pair(a,make_pair(b,c));
// ll mod = 1000000007;

void solve(){

    string t;
    map<ll,ll>m;

    ll nstart,nend,start,end;
    ll mx,cnt,num;

    mx = 0;
    cnt = 0;

    while(1){
        cin >> t;
        if( (t[0] >= 'A' && t[0] <= 'Z') || (t[0] >= 'a' && t[0] <= 'z')) break;
        m[stoll(t)] = 1;
    }

    ll old = LLONG_MIN;
    start = old;

    for(auto x:m){
        num = x.f;
        if(old < num-1){
            if(cnt > mx || nstart == LLONG_MIN){
                mx = cnt;
                nstart = start;
                nend = old;
            }
            start = num;
            cnt = 0;
        }
        else if(old == num){
            cnt--;
        }
        cnt++;
        old = num;
        // cout << num << '\n';
    }

    // cout << cnt << '\n';
    for(ll i = nstart;i <= nend;i++){
        cout << i << ' ';
    }

    return;
}
int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);

    ll q;
 
    // cin >> q;

    // while(q--)
        solve(); 

    return 0;
}