# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
964895 | PieArmy | Regions (IOI09_regions) | C++17 | 2150 ms | 131072 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.
typedef long long ll;
#include <bits/stdc++.h>
#define pb push_back
#define int ll
using namespace std;
int n,sq,R,Q;
int pre[25001][450],pre2[450][25001],say[25001],renk[200001],fazlapos[25001],bas[200001],son[200001];
vector<int>child[200001],var[25001],sirali[25001];
int cal(int a,int b){
if(say[b]==0||say[a]==0){
return 0;
}
if(say[b]>sq){
return pre[a][fazlapos[b]];
}
if(say[a]>sq){
return pre2[fazlapos[a]][b];
}
int sta[say[a]];
int tavan=-1;
int apos=0;
int ans=0;
for(int i=0;i<say[b];i++){
while(tavan!=-1&&son[sta[tavan]]<bas[var[b][i]]){
tavan--;
}
while(apos<say[a]&&bas[sirali[a][apos]]<=bas[var[b][i]]){
if(son[sirali[a][apos]]>=bas[var[b][i]]){
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |