# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
576901 | aryan12 | Event Hopping (BOI22_events) | C++17 | 460 ms | 43672 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define int long long
mt19937_64 RNG(chrono::steady_clock::now().time_since_epoch().count());
const int N = 1e5 + 5, INF = 1e15;
int s[N], e[N];
int dp[20][N];
vector<pair<int, int> > seg(N * 8, {INF, -1});
void update(int l, int r, int pos, int qpos, pair<int, int> qval)
{
if(l == r)
{
seg[pos] = min(seg[pos], qval);
return;
}
int mid = (l + r) >> 1;
if(qpos <= mid) update(l, mid, pos * 2, qpos, qval);
else update(mid + 1, r, pos * 2 + 1, qpos, qval);
seg[pos] = min(seg[pos * 2], seg[pos * 2 + 1]);
}
pair<int, int> query(int l, int r, int pos, int ql, int qr)
{
if(ql > r || l > qr) return {INF, -1};
if(ql <= l && r <= qr) return seg[pos];
int mid = (l + r) >> 1;
return min(query(l, mid, pos * 2, ql, qr), query(mid + 1, r, pos * 2 + 1, ql, qr));
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |