제출 #592435

#제출 시각UTC-0아이디문제언어결과실행 시간메모리
5924352022-07-09 07:53:08BobaaCats or Dogs (JOI18_catdog)C++17
100 / 100
138 ms27600 KiB
#include "catdog.h"
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1.1e5;
int N;
vector<int> adj[MAXN];
int A[MAXN];
int sz[MAXN];
int par[MAXN];
void dfs_sz(int cur, int prv) {
if (prv) adj[cur].erase(find(adj[cur].begin(), adj[cur].end(), prv));
sz[cur] = 1;
par[cur] = prv;
for (int nxt : adj[cur]) {
dfs_sz(nxt, cur);
sz[cur] += sz[nxt];
}
nth_element(adj[cur].begin(), adj[cur].begin(), adj[cur].end(), [&](int i, int j) {
return sz[i] > sz[j];
});
}
int heavypar[MAXN];
int num[MAXN];
int pos[MAXN];
void dfs_hld(int cur, int top) {
heavypar[cur] = top;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...