Submission #1148806

#TimeUsernameProblemLanguageResultExecution timeMemory
1148806LinkedArrayInspections (NOI23_inspections)C++17
0 / 100
1 ms584 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define pb push_back vector<int> l, r, last_run, machine_run_list, dist; vector<long long> s; signed main () { ios_base::sync_with_stdio(false); cin.tie(nullptr); int n, m, q, i, day, task, machine, past_days; cin >> n >> m >> q; l = vector<int>(m + 1); r = vector<int>(m + 1); for (i = 1; i <= m; i++) { cin >> l[i] >> r[i]; for (machine = l[i]; machine <= r[i]; machine++) { machine_run_list.push_back(machine); } } last_run = vector<int>(n + 1, -1); day = 1; for (auto machine : machine_run_list) { if (last_run[machine] == -1) { // it has never been ran last_run[machine] = day; day++; continue; } past_days = day - last_run[machine] - 1; dist.push_back(past_days); last_run[machine] = day; day++; } sort(dist.begin(), dist.end()); s = vector<long long>(q + 1); for (i = 1; i <= q; i++) { cin >> s[i]; if (s[i] >= n) { cout << "0 "; continue; } auto it = lower_bound(dist.begin(), dist.end(), s[i]); while (it < dist.end() && !(*it >= s[i])) { it++; } if (it >= dist.end()) { cout << "0 "; continue; } cout << dist.size() - (it - dist.begin()) << " "; } 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...
#Verdict Execution timeMemoryGrader output
Fetching results...