Submission #1176441

#TimeUsernameProblemLanguageResultExecution timeMemory
1176441orgiloogiiInfinite Race (EGOI24_infiniterace2)C++20
34 / 100
37 ms11332 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, q; cin >> n >> q; int ans = 0; vector <vector <int>> v(n + 1, vector <int>(0)); for (int i = 0;i < q;i++) { int x; cin >> x; if (x < 0) { if (v[-x].size() != 0) { v[-x].pop_back(); } } else { v[x].push_back(i); // cout << v[x].size() << " "; } } // return 0; vector <pair <int, int>> times; for (int i = 0;i < n;i++) { // cout << v[i].size() << " "; // continue; for (int j = 0;j < v[i].size();j++) { if(j == v[i].size() - 1) break; // cout << v[i][j] << " "; times.push_back({v[i][j + 1], v[i][j]}); } // cout << endl; } if (times.size() == 0) { cout << 0 << endl; return 0; } // cout << endl; sort(times.begin(), times.end()); // for (int i = 0;i < times.size();i++) { // cout << times[i].first << " " << times[i].second << endl; // } // cout << ans << endl; int l = times[0].first; ans = 1; for (int i = 1;i < times.size();i++) { if (l <= times[i].second) { l = times[i].first; ans++; } } cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...