#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
string s;
cin>>s;
int q;
cin>>q;
while(q--){
int l,r;
cin>>l>>r;
l--;
r--;
vector<int>v1;
vector<int>v2;
int ro=0;
for(int i=l;i<=r;i++){
if(s[i]=='C'){
if(i!=l and s[i-1]=='T'){
v1.push_back(abs(ro));
ro=0;
}
ro++;
}else{
ro--;
}
}
if(s[r]=='T'){
v1.push_back(abs(ro));
}
int j=v1.size()-1;
ro=0;
int ans=0;
for(int i=r;i>=l;i--){
if(s[i]=='C'){
if(i!=r and s[i+1]=='T'){
ans=ans+max(abs(ro),v1[j]);
ro=ro+max(abs(ro),v1[j]);
j--;
}
ro++;
}else{
ro--;
}
}
if(s[l]=='T'){
ans=ans+max(abs(ro),v1[j]);
}
cout<<ans<<endl;
}
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
11 ms |
212 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
11 ms |
212 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
11 ms |
212 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |