제출 #675843

#제출 시각아이디문제언어결과실행 시간메모리
675843Dan4Life가로등 (APIO19_street_lamps)C++17
0 / 100
59 ms1180 KiB
#include <bits/stdc++.h> using namespace std; const int maxn = (int)3e5+10; string s; int a[maxn]; int cnt[maxn], ti[maxn]; int n, q; int32_t main() { ios_base::sync_with_stdio(false); cin.tie(0); cin >> n >> q >> s; for(int i = 1; i <= n; i++){ a[i] = (s[i-1]=='1'); ti[i] = (a[i]==1?0:-1); } for(int i = 1; i <= q; i++){ int x, y; cin >> s >> x; if(s[0]=='t'){ a[x]^=1; //if turned to 1, cnt[x]+=now-last time it was turned to 1 //cntx = number of times x was 0 //ti x = last time x was a 1 if(a[x]==1){ if(ti[x]!=-1) cnt[x]+=i-ti[x]-1; else cnt[x]=i; ti[x]=i; } else ti[x]=i-1; } else{ cin >> y; int tot = 0; //cout << i << " " << cnt[x] << " " << ti[x] << " "; if(ti[x]!=-1){ if(a[x]==1) tot = i-cnt[x]; else tot = ti[x]-cnt[x]; } cout << tot << "\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...