# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
523620 | KoD | Building Bridges (CEOI17_building) | C++17 | 73 ms | 8216 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 std::vector;
using std::array;
using std::pair;
using std::tuple;
using i64 = std::int64_t;
constexpr i64 INF = std::numeric_limits<i64>::max() / 2;
struct Line {
i64 a, b;
explicit Line(const i64 a = 0, const i64 b = INF) : a(a), b(b) {}
i64 eval(const i64 x) const { return a * x + b; }
};
struct LiChaoTree {
int logn, size;
vector<i64> coord;
vector<Line> line;
explicit LiChaoTree(const vector<i64>& vec) {
logn = 0;
while ((1 << logn) < (int)vec.size()) {
logn += 1;
}
size = 1 << logn;
coord = vec;
std::sort(coord.begin(), coord.end());
coord.resize(size, coord.back());
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |