# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
427385 | kai824 | City (JOI17_city) | C++17 | 269 ms | 48604 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 "Encoder.h"
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
vector<int> adjl[250005];
ll pre[250005],sub[250005],nex;
ll cnts[250005];
void init(){
for(int i=1;i<250000;i++){
cnts[i]=cnts[i-1]+(250000-i);
}
}
ll convert(int x,int y){//returns no. of smaller pairs...
y-=x;
assert(cnts[x]+y<cnts[x+1]);
return cnts[x]+y;
}
void dfs(int node,int p=-1){
pre[node]=nex++;
for(int x:adjl[node]){
if(x==p)continue;
dfs(x,node);
}
sub[node]=nex-1;
// cout<<node<<' '<<pre[node]<<' '<<sub[node]<<'\n';
Code(node,convert(pre[node],sub[node]));
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |