제출 #1018321

#제출 시각아이디문제언어결과실행 시간메모리
1018321YassirSalamaElection (BOI18_election)C++17
0 / 100
4 ms348 KiB
#include<bits/stdc++.h> using namespace std; #define int long long signed main(){ int n; cin>>n; string s; cin>>s; int arr[n]; for(int i=0;i<n;i++){ arr[i]=(s[i]=='C'?1:-1); } int pref[n]; int suff[n]; for(int i=0;i<n;i++){ pref[i]=arr[i]; if(i) pref[i]+=pref[i-1]; } for(int j=n-1;j>=0;j--){ suff[j]=arr[j]; if(j+1<n) suff[j]+=suff[j+1]; } int q; cin>>q; while(q--){ int ans=0; int l,r; cin>>l>>r; l--,r--; int c=1e18; int d=1e18; for(int i=l;i<=r;i++){ c=min(c,pref[i]); } for(int i=l;i<=r;i++){ d=min(d,suff[i]); } if(l){ c-=pref[l-1]; } if(r+1<n) d-=suff[r+1]; int x=max(-c,-d); ans=max(ans,x); cout<<ans<<endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...