#P864. 树的匹配

树的匹配

题目描述

给定一棵树有 nn 个结点,11 号点为根。请计算,这棵树的最大匹配数,并且统计有多少匹配方案可以达到最大。由于答案可能很大,输出答案模 1,000,000,0071,000,000,007 的余数。

所谓树的匹配,是指选择一些具有父子关系的点,两两组成一对,每个点只能在一个配对里,不具备父子关系的点不能配对。一种匹配方案的匹配数定义为已形成的配对的对数。

输入格式

  • 第一行:单个整数表示 nn
  • 第二行:n1n-1 个整数表示 p2p_2pnp_npip_i 表示 ii 号点父亲的编号,保证有 1pi<i1\leq p_i<i

输出格式

  • 第一行:表示最大匹配数。
  • 第二行:表示最大匹配数的方案数模 1,000,000,0071,000,000,007 的余数。
4
1 1 1
1
3

数据范围

  • 对于 30%30\% 的数据, n200n\leq 200
  • 对于 60%60\% 的数据, n5000n\leq 5000
  • 对于 100%100\% 的数据, 1n200,0001\leq n\leq 200,000