# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
472104 | Cross_Ratio | Roller Coaster Railroad (IOI16_railroad) | C++14 | 90 ms | 17716 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>
//#include "railroad.h"
using namespace std;
const int INF = 1e9;
struct SegTree {
struct Node {
int ma, sum;
Node(int m1, int m2) : ma(m1), sum(m2) {}
Node(int v) : ma(v), sum(v) {}
Node() : ma(INF),sum(0) {}
};
vector<Node> seg;
int MAX;
SegTree(int N) {
int i;
for(i=1;2*i<N;i*=2) {}
seg.resize(i);
MAX = i;
}
Node f(Node x, Node y) {
return Node(max(x.ma,y.ma),x.sum+y.sum);
}
void cons() {
for(int i = MAX/2-1; i>0; i--) {
seg[i] = f(seg[2*i],seg[2*i+1]);
}
}
Node sum(int s, int e, int n, int ns, int ne) {
if(e<=ns||ne<=s) return Node();
if(s<=ns&&ne<=e) return seg[n];
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... |