# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
238939 | DodgeBallMan | Pinball (JOI14_pinball) | C++14 | 312 ms | 20708 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;
const int N = 2e5 + 10;
int n, m, a[N], b[N], c[N];
long long d[N], t1[N*4], t2[N*4], ans = 1e18;
vector<int> coord;
void update( long long t[], int x, long long va, int l = 1, int r = coord.size(), int idx = 1 ) {
if( l == r ) return void( t[idx] = min( t[idx], va ) );
int mid = l + r >> 1;
if( x <= mid ) update( t, x, va, l, mid, idx<<1 );
else update( t, x, va, mid+1, r, idx<<1|1 );
t[idx] = min( t[idx<<1], t[idx<<1|1] );
}
long long query( long long t[], int ll, int rr, int l = 1, int r = coord.size(), int idx = 1 ) {
//printf("%d %d L : %d R : %d %lld\n",ll,rr,l,r,t[idx]);
if( l > rr || r < ll ) return 1e18;
if( l >= ll && r <= rr ) return t[idx];
int mid = l + r >> 1;
return min( query( t, ll, rr, l, mid, idx<<1 ), query( t, ll, rr, mid+1, r, idx<<1|1 ) );
}
int get( int x ) { return lower_bound( coord.begin(), coord.end(), x ) - coord.begin() + 1; }
int main()
{
fill( t1, t1 + N*4, 1e18 ), fill( t2, t2 + N*4, 1e18 );
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... |