Submission #219299

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
2192992020-04-05 06:16:55maruiiCapital City (JOI20_capital_city)C++14
100 / 100
891 ms33132 KiB
#include <bits/stdc++.h>
using namespace std;
#define eack emplace_back
int N, K, C[200001], ans, A[200001], B[200001];
vector<int> edge[200001];
bool vis[200001];
int sz[200001];
int szf(int x, int p) {
sz[x] = 1;
for (auto i : edge[x]) if (i != p && !vis[i]) sz[x] += szf(i, x);
return sz[x];
}
int get_cen(int x, int p, int t) {
for (auto i : edge[x]) if (i != p && !vis[i] && sz[i] >= t) return get_cen(i, x, t);
return x;
}
bool ban[200001], chk[200001], vis2[200001];
vector<int> clr, vec[200001];
int par[200001];
void dfs(int x, int p) {
par[x] = p;
clr.eack(C[x]);
vec[C[x]].eack(x);
++B[C[x]];
chk[C[x]] = vis2[x] = 0;
for (auto i : edge[x]) if (i != p && !vis[i]) dfs(i, x);
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

capital_city.cpp: In function 'void cd(int)':
capital_city.cpp:33:30: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
  x = get_cen(x, x, szf(x, x) + 1 >> 1);
                    ~~~~~~~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...