|
||||||||||
没有兄弟的舞会Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 827 Accepted Submission(s): 276 Problem Description 度度熊、光羽、带劲三个人是好朋友。 度度熊有一棵$n$个点的有根树,其中1号点为树根。除根节点之外,每个点都有父节点,记$i$号点的父节点为$fa[i]$。 度度熊称点$i$和点$j$是**兄弟**(其中$i \neq j$)当且仅当$fa[i]=fa[j]$。 第$i$个点的权值为$A_i$。现要求选出一个点集,该点集合法当且仅当**点集中至多只有一对兄弟**。 度度熊想知道,在所有可行的点集中,权值和**最大**以及**最小**的点集权值和分别是多少? Input 第一行一个数,表示数据组数$T$。 每组数据第一行一个整数$n$;第二行$n-1$个数,表示$fa[2],fa[3],..,fa[n]$;第三行$n$个数,表示$A_i$。 数据组数T=100,满足: - $1 \le n \le 10^5$ - $-10^9 \le A_i \le 10^9$ - $1 \le fa[i] < i$ 其中90%的数据满足$n \le 1000$。 Output 每组数据输出一行,每行包含两个数,分别表示权值和的**最大值**和**最小值**。 Sample Input
Sample Output
Source | ||||||||||
|