Submission #28300315


Source Code Expand

/*
 * Author: nskybytskyi
 * Time:   2022-01-02 17:42:09
 */

#include <bits/stdc++.h>
using namespace std;

int main() {
  cin.tie(0)->sync_with_stdio(0);

  int n, q;
  cin >> n >> q;

  vector<tuple<int, int, int>> stx(n);
  for (auto& [s, t, x] : stx) {
    cin >> s >> t >> x;
  }

  vector<pair<int, int>> d(q);
  for (int i = 0; i < q; ++i) {
    int di;
    cin >> di;
    di *= 2;
    d[i] = {di, i};
  }

  sort(d.begin(), d.end());

  vector<tuple<int, bool, int>> events;
  for (auto [s, t, x] : stx) {
    events.emplace_back((2 * s - 1) - 2 * x, true, x);
    events.emplace_back((2 * t - 1) - 2 * x, false, x);
  }

  sort(events.begin(), events.end());

  int j = 0;
  multiset<int> active;
  vector<int> ans(q, -1);

  for (auto [di, i] : d) {
    while (j < (n << 1) && get<0>(events[j]) < di) {
      const auto x = get<2>(events[j]);
      if (get<1>(events[j])) {
        active.insert(x);
      } else {
        active.erase(active.find(x));
      }
      ++j;
    }
    if (!active.empty()) {
      ans[i] = *active.begin();
    }
  }

  for (auto elem : ans) {
    cout << elem << "\n";
  }

  return 0;
}

Submission Info

Submission Time
Task E - Roadwork
User nika_skybytska
Language C++ (GCC 9.2.1)
Score 500
Code Size 1192 Byte
Status AC
Exec Time 230 ms
Memory 22072 KiB

Judge Result

Set Name All Sample
Score / Max Score 500 / 500 0 / 0
Status
AC × 15
AC × 1
Set Name Test Cases
All killer_01, killer_02, killer_03, killer_04, random_dense, random_max, random_small_01, random_small_02, random_small_03, random_small_04, random_small_05, random_small_06, random_small_07, random_small_08, sample_01
Sample sample_01
Case Name Status Exec Time Memory
killer_01 AC 118 ms 13364 KiB
killer_02 AC 123 ms 13236 KiB
killer_03 AC 120 ms 13312 KiB
killer_04 AC 68 ms 8248 KiB
random_dense AC 230 ms 22072 KiB
random_max AC 127 ms 13208 KiB
random_small_01 AC 7 ms 3504 KiB
random_small_02 AC 3 ms 3640 KiB
random_small_03 AC 2 ms 3532 KiB
random_small_04 AC 3 ms 3488 KiB
random_small_05 AC 3 ms 3500 KiB
random_small_06 AC 4 ms 3544 KiB
random_small_07 AC 4 ms 3576 KiB
random_small_08 AC 2 ms 3676 KiB
sample_01 AC 2 ms 3424 KiB