Submission #983129

#TimeUsernameProblemLanguageResultExecution timeMemory
983129vjudge1Street Lamps (APIO19_street_lamps)C++17
40 / 100
80 ms11132 KiB
#include <time.h> #include <cstdlib> #include <stack> #include <numeric> #include <unordered_map> #include <unordered_set> #include <iomanip> #include <map> #include <set> #include <iterator> #include <deque> #include <queue> #include <sstream> #include <array> #include <string> #include <tuple> #include <chrono> #include <cassert> #include <cstdio> #include <cstring> #include <list> #include <iostream> #include <vector> #include <cmath> #include <algorithm> #include <bitset> using namespace std; int tt = 1, n; string s; int k[1001][1001]; int last[300005], kol[300005]; int main(){ ios::sync_with_stdio(0); cin.tie(0), cout.tie(0); cin >> n >> tt; cin >> s; if(n <= 100 && tt <= 100){ while(tt--){ string type; cin >> type; for(int i = 1; i <= n; i++){ for(int j = i + 1; j <= n + 1; j++){ if(s[j - 2] == '1') k[i][j]++; else break; } } if(type[0] == 'q'){ int a, b; cin >> a >> b; cout << k[a][b] << "\n"; } else{ int p; cin >> p; if(s[p - 1] == '0') s[p - 1] = '1'; else s[p - 1] = '0'; } } return 0; } for(int i = 1; i <= tt; i++){ string type; cin >> type; if(type[0] == 'q'){ int a, b; cin >> a >> b; int num = kol[a]; if(s[a - 1] == '1') num += (i - last[a]); cout << num << "\n"; } else{ int p; cin >> p; if(s[p - 1] == '1'){ kol[p] += (i - last[p]); last[p] = i; s[p - 1] = '0'; } else{ last[p] = i; s[p - 1] = '1'; } } } }
#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...