# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1118571 | Sharky | Food Court (JOI21_foodcourt) | C++17 | 554 ms | 60080 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
const int N = 2.5e5 + 10;
vector<pair<int, int>> qry[N], ev[N]; // ev: index, cnt
int qc = 0, ans[N], grp[N];
struct Node {
int pmin = 0, sum = 0, add = 0;
} dummy;
struct SegTree {
int size = 1;
vector<Node> seg, lazy;
void init(int n) {
while (size < n) size *= 2;
seg.assign(2 * size + 10, dummy);
lazy.assign(2 * size + 10, dummy);
}
void push(int id) {
seg[id].pmin = min(seg[id].pmin, seg[id].sum + lazy[id].pmin);
seg[id].sum += lazy[id].sum;
seg[id].add += lazy[id].add;
if (id < size) for (int i = 0; i < 2; i++) {
lazy[id * 2 + i].pmin = min(lazy[id * 2 + i].pmin, lazy[id * 2 + i].sum + lazy[id].pmin);
lazy[id * 2 + i].sum += lazy[id].sum;
lazy[id * 2 + i].add += lazy[id].add;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |