제출 #72124

#제출 시각UTC-0아이디문제언어결과실행 시간메모리
721242018-08-26 05:24:24IDxTree (#118)박스런 (FXCUP3_box)C++17
100 / 100
159 ms11564 KiB
#include <bits/stdc++.h>
#define va first
#define vb second
using namespace std;
typedef pair<int,int> pii;
const int mx = 5e5 + 5, ms = 1.05e6;
struct Segtree{
int n, seg[ms], *a;
int _i(int now, int s, int e){
//printf("_i(%d %d %d)\n",now,s,e);
if(s == e){
//printf("seg[%d] = %d\n",now,a[s]);
return seg[now] = a[s];
}
int m = (s+e)/2;
seg[now] = max(_i(now<<1,s,m), _i(now<<1|1,m+1,e));
//printf("seg[%d] = %d\n",now,seg[now]);
return seg[now];
}
Segtree(){}
Segtree(int n, int *a):n(n),a(a){
//printf("n = %d, a = %p\n",n,a);
_i(1,1,n);
}
int midx(int now, int s, int e, int l, int r, int v){
//printf("midx(%d,%d,%d,%d,%d,%d)\n",now,s,e,l,r,v);
if(e < l || s > r) return INT_MAX;
if(seg[now] < v) return INT_MAX;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...