bzoj#P3162. 独钓寒江雪

独钓寒江雪

题目背景

hzhwcmhf 和妹子站在江边,品莹的雪花随着清风扑面而来。

“我。相当喜欢雪花呢。”

“……”

“你,一个人没问题吗?”

“要走了么?”

“……嗯,大概是的。”

“不能留下来么?”

“不行啦……这样吧”妹子随手接住了一片雪花,“如果有一天,你能找到这条江中的所有这样子的雪花,我大概就能回到你的身边吧……”

一阵疾风吹过,夹杂着大片雪花,hzhwcmhf 不禁闭上了眼睛。

再次睁开时,眼前只剩下了手中的一片雪花……

题目描述

一片雪花可以由一个有 nn 个结点 n1n-1 条边的连通图来描运。

妹子留下来的任务就是让 hzhwcmhf 我到所有与目标结构相同的雪花。

但是这条寒江中的雪花有些特别的地方,每片雪花都有 k(0kn)k(0\le k\le n) 个极寒点。如果两个极寒点由一条边相连,那么这片雪花会因为不稳定而分解。

对于两个图 A,BA,B ,有以下两种关系:

  1. 存在一种方式使得将 AA 的顶点重新标号后,对于任意一条边 (u,v)(u,v) 要么在 A,BA,B 中同时出现,要么在 A,BA,B 中都不出现。
  2. 在满足条件 11 的情况下,以同样的标号方式,满足结点 vv 要么在 A,BA,B 中都为极寒点,要么在 A,BA,B 中都不是极寒点。

对于满足条件 11 的图 A,BA,B,我们称它们是结构相同的。

对于满足条件 22 的图 A,BA,B,我们称它们是完全相同的。

现在摆在 hzlwcmhf 面前的一大问题是。与目标结构相同的雪花中,到底有多少个不完全相同的呢?

也就是问,求一稞无根树上本质不同的独立集的个数。

妹子的离去让 hzlwcmhf 悲痛欲绝,但是他没有放弃,因此他需要你的帮助。

输入格式

第一行有一个正整数 nn,代表目标雪花的结点数。结点以 1,2,,n1,2,\cdots,n 编号。

接下来有 n1n-1 行,每行两个正整数 v,uv,u,代表 v,uv,u 两个结点间有一条边。保证 1v,un1\le v,u\le n

保证图为一个连通图。

输出格式

一行,一个非负整数表示答案。即与目标雪花结构相同中,不完全相同的雪花个数。由于答案可能较大,请输出答案对 109+710^9+7 取模的值。

样例输入#1

1

样例输出#1

2

样例解释#1

只有一个点,两种可能:该点不为极寒点或者该点为极寒点。

样例输入#2

5
1 2
1 3
1 4
1 5

样例输出#2

6

样例解释#2

注意到图能够旋转,那么有以下方式。注意极寒点不能相邻,且 2,3,4,52,3,4,5 完全等价。

(hzlwcmhf:这好像甲烷的取代物的同分异构啊……)

(VFleaKing: orz!!!!!)

样例输入#3

6
1 2
1 3
1 4
4 5
4 6

样例输出#3

9

样例解释#3

数据太大解释不清,注意整个图可以旋转。

数据规模与约定

其中 10%10\% 的数据,n103n\le 10^3。保证在与目标结构相同的所有图中,不存在一种方式重新标号后与原来完全相同。

另有 20%20\% 的数据,n103n\le 10^3。保证输入的图为一条链。

另有 30%30\% 的数据,n103n\le 10^3。保证输入的图中存在一个点,如果将该点当成根,那么该点的所有子树结构相同(即有根树同构)。

对于 100%100\% 的数据,n500000n\le 500000

题目来源

2013湖北互测week1