Submission #1148254

#TimeUsernameProblemLanguageResultExecution timeMemory
1148254SyedSohaib_123Infinite Race (EGOI24_infiniterace2)C++20
29 / 100
10 ms3400 KiB
#include <bits/stdc++.h>

using namespace std;

#define append push_back
#define int long long

const int N=2e5+10,LG=21;
int mod=998244353;

int cnt[N],tot[N];

void solve(int tst){
    int n,q;
    cin>>n>>q;
    int ans=0;
    for(int i=1;i<n;i++) cnt[i]=0;
    int last=0;
    for(int i=1;i<=q;i++){
        int a;cin>>a;
        if(a<0){
            a*=-1;
            tot[a]+=max(0ll,cnt[a]-1),ans=max(ans,tot[a]);
            cnt[a]=0;
        }
        else{
            if(cnt[last]>1 and last!=a and cnt[a]>=1) cnt[a]++;
            cnt[a]++;
        }
        last=abs(a);
    }
    for(int i=1;i<n;i++) tot[i]+=max(0ll,cnt[i]-1),ans=max(ans,tot[i]);
    cout<<ans<<endl;
}

signed main(){
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    int t = 1;
    // cin >> t;
    for(int i=1;i<=t;i++)
        solve(i);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...