Submission #1178152

#TimeUsernameProblemLanguageResultExecution timeMemory
1178152AlgorithmWarriorElection (BOI18_election)C++20
28 / 100
3094 ms940 KiB
#include <bits/stdc++.h>

using namespace std;

int const MAX=500005;
int n,q;
int v[MAX];

void read(){
    cin>>n;
    int i;
    for(i=1;i<=n;++i){
        char ch;
        cin>>ch;
        if(ch=='C')
            v[i]=1;
        else
            v[i]=-1;
    }
    cin>>q;
}

int query(int l,int r){
    int minf=0;
    int val=0;
    int maxim=0;
    int i;
    for(i=l;i<=r;++i){
        val+=v[i];
        if(minf>val)
            minf=val;
        if(maxim<val-minf)
            maxim=val-minf;
    }
    return maxim-val;
}

void process_queries(){
    int i;
    for(i=1;i<=q;++i){
        int st,dr;
        cin>>st>>dr;
        cout<<query(st,dr)<<'\n';
    }
}

int main()
{
    read();
    process_queries();
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...