# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
955987 | emad234 | Horses (IOI15_horses) | C++17 | 0 ms | 0 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 "horses.h"
#include <bits/stdc++.h>
#define ll long long
#define l first
#define r second
#define F first
#define S second
#define pii pair<ll, ll>
const ll mod = 1e9 + 7;
const ll mxN = 5e5 + 5;
using namespace std;
ll NN;
struct tree
{
vector<pii> seg;
ll s, e;
void init(ll n)
{
NN = exp2(ceil(log2(n)));
seg.resize(NN * 4);
}
ll queryMax(ll l = 1, ll r = NN, ll ind = 1)
{
if (l > e || r < s)
return 0;
if (l >= s && r <= e)
return seg[ind].F;
ll md = (l + r) / 2;
return max(queryMax(l, md, ind * 2), queryMax(md + 1, r, ind * 2 + 1));
}