Submission #1003886

#TimeUsernameProblemLanguageResultExecution timeMemory
1003886vjudge1Paint (COI20_paint)C++17
0 / 100
14 ms6692 KiB
#include<bits/stdc++.h> using namespace std; const int N = 200010; int v[N]; int main(){ int r, s; cin >> r >> s; int n = s; int q; for(int i = 0;i < n;i++){ cin >> v[i]; } set <array <int, 3>> ranges; for(int i = 0;i < n;i++){ int l = i, r = i; while(v[l] == v[r] and r < n){ r++; } r--; ranges.insert({l, r, v[i]}); i = r; } cin >> q; for(int i = 0;i < q;i++){ int _, t, cor; cin >> _ >> t >> cor; t--; auto it = ranges.lower_bound({t, 0, 0}); int l = (*it)[0], r = (*it)[1]; ranges.erase(it); it = ranges.lower_bound({t, 0, 0}); if((*it)[2] == cor) r = (*it)[1]; it--; if((*it)[2] == cor) l = (*it)[0]; ranges.insert({l, r, cor}); } for(auto x : ranges){ for(int i = x[0];i <= x[1];i++){ cout << x[2] << ' '; } } cout << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...