제출 #934197

#제출 시각아이디문제언어결과실행 시간메모리
934197irmuunStreet Lamps (APIO19_street_lamps)C++17
40 / 100
85 ms15804 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ff first #define ss second #define all(s) s.begin(),s.end() #define rall(s) s.rbegin(),s.rend() int main(){ ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); ll n,q; cin>>n>>q; char s[n+5],cur[n+5]; for(ll i=1;i<=n;i++){ cin>>s[i]; } if(n<=100&&q<=100){ vector<pair<ll,ll>>que(q); for(ll i=0;i<q;i++){ string t; cin>>t; if(t=="toggle"){ ll j; cin>>j; que[i]={j,-1}; } else{ ll a,b; cin>>a>>b; que[i]={a,b}; ll ans=0; for(ll j=1;j<=n;j++){ cur[j]=s[j]; } for(ll j=0;j<=i;j++){ bool ok=true; for(ll k=a;k<b;k++){ if(cur[k]=='0'){ ok=false; break; } } if(ok){ ans++; } if(que[j].ss==-1){ ll p=que[j].ff; if(cur[p]=='1') cur[p]='0'; else cur[p]='1'; } } cout<<ans<<"\n"; } } return 0; } vector<pair<ll,ll>>bef(n+1); for(ll i=1;i<=n;i++){ bef[i].ff=0; bef[i].ss=s[i]-'0'; } vector<ll>ans(n+1,0); for(ll i=1;i<=q;i++){ string t; cin>>t; if(t=="toggle"){ ll j; cin>>j; if(bef[j].ss==1){ ans[j]+=i-bef[j].ff; } bef[j].ff=i; bef[j].ss=1-bef[j].ss; } else{ ll a,b; cin>>a>>b; if(a==b-1){ if(bef[a].ss==1){ ans[a]+=i-bef[a].ff; } bef[a].ff=i; cout<<ans[a]<<"\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...