# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
782266 | PoonYaPat | Road Construction (JOI21_road_construction) | C++14 | 1490 ms | 15360 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;
typedef long long ll;
typedef pair<ll,ll> pii;
int n,k;
pii a[250005];
vector<ll> ans;
bool check(ll want, int mode) {
vector<ll> res;
set<pii> s;
for (int l=1, r=1; r<=n; ++r) {
while (a[l].first<a[r].first-want) {
s.erase(s.find({a[l].second,a[l].first}));
++l;
}
auto it=s.upper_bound({a[r].second-want,-1e15});
while (it!=s.end() && (*it).first<=a[r].second+want) {
res.push_back(max(abs((*it).second-a[r].first),abs((*it).first-a[r].second)));
if (res.size()==k) return true;
++it;
}
s.insert(pii(a[r].second,a[r].first));
}
if (mode) swap(ans,res);
Compilation message (stderr)
# | 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... |