无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

CF競(jìng)賽題目講解_CF161D(樹上啟發(fā)式合并)

2022-06-25 10:59 作者:Clayton_Zhou  | 我要投稿

// https://codeforces.com/problemset/problem/161/D


// CF競(jìng)賽題目講解_CF161D(樹上啟發(fā)式合并)

程序中例子:

5 2

1 2

2 3

3 4

2 5


int sz[maxn], son[maxn],dep[maxn];

int cnt[maxn];// 已經(jīng)處理節(jié)點(diǎn)中深度為dep的節(jié)點(diǎn)個(gè)數(shù)


int dfsn[maxn],T=0;

int a[maxn];//dfs序 編號(hào)對(duì)應(yīng)的原標(biāo)號(hào)

?

void dfs(int s, int pre) {

? ? sz[s] = 1;// 子樹大小

dep[s] = dep[pre] + 1;// 節(jié)點(diǎn)深度

??

dfsn[s]=++T; //dfs序 編號(hào)

a[T]=s; //dfs序 編號(hào)對(duì)應(yīng)的原標(biāo)號(hào)

? ? for(auto e : load[s]) {

? ? ? ? if(e == pre)? ?continue;

? ? ? ? dfs(e, s);

? ? ? ? sz[s] += sz[e];

? ? ? ? if(sz[e] > sz[son[s]])

? ? ? ? ? ? son[s] = e;// 重子樹

? ? }

}



CF競(jìng)賽題目講解_CF161D(樹上啟發(fā)式合并)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
汾西县| 兴海县| 台北市| 商城县| 海丰县| 南宁市| 确山县| 即墨市| 商水县| 金秀| 宁南县| 南江县| 固始县| 河西区| 五家渠市| 习水县| 江北区| 余干县| 阿鲁科尔沁旗| 伊吾县| 邓州市| 扎兰屯市| 天水市| 冕宁县| 中阳县| 华坪县| 渝中区| 双柏县| 南康市| 大城县| 恭城| 桂平市| 余姚市| 樟树市| 乐安县| 扬中市| 乐都县| 孟津县| 油尖旺区| 澄迈县| 定日县|