PID508 / 班级分组
题目描述

whecne?的班级有n个人,他们的联络网型成一棵以班长为根的树,有边相连代表两人可以直接联络。

每个人有一个代号,班长代号为1,且除班长外每个人的父节点的代号小于他自己的代号。

现在班级进行活动,要分成m组,每个组必须满足如下条件:

1、每个组员仅分在本组中

2、至少有一个组员

3、任意两个组员无需通过本组外的人就可以联络(但可以通过本组组员进行联络)

每个人有一个活动程度,一个组的活动程度是全组人活动程度之和。

对于任意一种正确的分组,平均度就是m组中最小活动程度。为了分组较为平均,希望平均度尽可能大,请你求出这个最大值。

输入格式

第一行为三个数:n,m,和班长的活动程度(1<=m<=n<=10000)。

接下来n-1行,每行两个数:此人的父节点代号和他的活动程度(活动程度值为正整数,不超过30,行数就是他本身的代号)

输出格式

一个数,表示最大的平均度。

样例输入
样例输出
提交题目 Error [ 更改语言 ] Language
C C++ Pascal Python2
相关讨论
查看更多讨论
发布新讨论 讨论