Submission #1151934

#TimeUsernameProblemLanguageResultExecution timeMemory
1151934Hamed_GhaffariElection (BOI18_election)C++20
28 / 100
3095 ms1164 KiB
#include<bits/stdc++.h>
using namespace std;

const int MXN = 5e5+5;

int n, q, ps[MXN];
string s;

int32_t main() {
    cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0);
    cin >> n >> s >> q;
    for(int i=1; i<=n; i++) ps[i] = ps[i-1] + (s[i-1]=='C' ? 1 : -1);
    while(q--) {
        int l, r;
        cin >> l >> r;
        int cur=0, mx=0;
        for(int i=l; i<=r; i++) {
            if(ps[i]-ps[l-1]==-cur-1) cur++;
            mx = max(mx, ps[i]-ps[l-1]+cur);
        }
        cout << mx-ps[r]+ps[l-1] << '\n';
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...