Submission #555582

#TimeUsernameProblemLanguageResultExecution timeMemory
555582fuad27Nekameleoni (COCI15_nekameleoni)C++17
42 / 140
3087 ms972 KiB
#include<bits/stdc++.h> using namespace std; #pragma GCC optimize("O3") int k; int main () { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; cin >> n >> k >> m; int arr[n]; for(int i = 0;i<n;i++){ cin >> arr[i]; arr[i]--; } while(m--) { int type; cin >> type; if(type == 1) { int p, v; cin >> p >> v; v--;p--; arr[p] = v; } else { vector<int> mp(51, 0); int p1 = 0, p2 = 0; int mx = 0; int ans = 1e9; set<int> s; mp[arr[0]]++; for(int i = 0;i<=50;i++)s.insert(i); s.erase(arr[0]); while(p2 < n) { mx = *(s.begin()); if(mx >= k) { ans = min(ans, (int)p2-p1+1); mp[arr[p1]]--; if(mp[arr[p1]] == 0)s.insert(arr[p1]); p1++; } else { if(p2 < n-1){ mp[arr[p2+1]]++; s.erase(arr[p2+1]); } p2++; } } if(ans == 1e9)ans = -1; cout << ans << "\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...
#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...