# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
344731 | _ani | UFO (IZhO14_ufo) | C++17 | 441 ms | 177136 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 <iostream>
#include <vector>
#include <algorithm>
using namespace std;
using ll = long long;
const int inf = 1'000'000'000;
vector<vector<ll>> a;
vector<vector<ll>> tr, tc;
void Buildr(int v, int vl, int vr, int i) {//checked
if (vl == vr) {
tr[i][v] = a[i][vl];
return;
}
int m = (vl + vr) / 2;
Buildr(v * 2, vl, m, i);
Buildr(v * 2 + 1, m + 1, vr, i);
tr[i][v] = max(tr[i][v * 2], tr[i][v * 2 + 1]);
}
void Buildc(int v, int vl, int vr, int j) {//checked
if (vl == vr) {
tc[j][v] = a[vl][j];
return;
}
int m = (vl + vr) / 2;
Buildc(v * 2, vl, m, j);
Buildc(v * 2 + 1, m + 1, vr, j);
tc[j][v] = max(tc[j][v * 2], tc[j][v * 2 + 1]);
}
int RFirstGreater(int v, int vl, int vr, int l, int r, int i, ll k) {//checked
if (vl == vr) {
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |