제출 #729107

#제출 시각아이디문제언어결과실행 시간메모리
7291071075508020060209tcStreet Lamps (APIO19_street_lamps)C++14
20 / 100
5049 ms25352 KiB
#include<bits/stdc++.h> using namespace std; #define int long long int n;int Q; string tss; int ar[300005]; string typ[300005];int qa[300005];int qb[300005]; int ps[300005]; int ans[300005]; signed main(){ cin>>n>>Q; cin>>tss;tss="*"+tss; for(int i=1;i<=n;i++){ ar[i]=tss[i]-'0'; } for(int i=1;i<=Q;i++){ cin>>typ[i]; if(typ[i][0]=='q'){ cin>>qa[i]>>qb[i]; }else{ cin>>qa[i]; } } for(int i=1;i<=n;i++){ ps[i]=ps[i-1]+ar[i]; } for(int i=1;i<=Q;i++){ for(int j=i;j<=Q;j++){ if(typ[j][0]=='q'){ int len=qb[j]-1-qa[j]+1; if(ps[qb[j]-1]-ps[qa[j]-1]==len){ ans[j]++; } } } if(typ[i][0]=='t'){ ar[qa[i]]^=1; for(int j=1;j<=n;j++){ ps[j]=ps[j-1]+ar[j]; } } } for(int i=1;i<=Q;i++){ if(typ[i][0]=='q'){ cout<<ans[i]<<"\n"; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...