201012: [AtCoder]ARC101 E - Ribbons on Tree

Memory Limit:1024 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $900$ points

Problem Statement

Let $N$ be an even number.

There is a tree with $N$ vertices. The vertices are numbered $1, 2, ..., N$. For each $i$ ($1 \leq i \leq N - 1$), the $i$-th edge connects Vertex $x_i$ and $y_i$.

Snuke would like to decorate the tree with ribbons, as follows.

First, he will divide the $N$ vertices into $N / 2$ pairs. Here, each vertex must belong to exactly one pair. Then, for each pair $(u, v)$, put a ribbon through all the edges contained in the shortest path between $u$ and $v$.

Snuke is trying to divide the vertices into pairs so that the following condition is satisfied: "for every edge, there is at least one ribbon going through it." How many ways are there to divide the vertices into pairs, satisfying this condition? Find the count modulo $10^9 + 7$. Here, two ways to divide the vertices into pairs are considered different when there is a pair that is contained in one of the two ways but not in the other.

Constraints

  • $N$ is an even number.
  • $2 \leq N \leq 5000$
  • $1 \leq x_i, y_i \leq N$
  • The given graph is a tree.

Input

Input is given from Standard Input in the following format:

$N$
$x_1$ $y_1$
$x_2$ $y_2$
$:$
$x_{N - 1}$ $y_{N - 1}$

Output

Print the number of the ways to divide the vertices into pairs, satisfying the condition, modulo $10^9 + 7$.


Sample Input 1

4
1 2
2 3
3 4

Sample Output 1

2

There are three possible ways to divide the vertices into pairs, as shown below, and two satisfy the condition: the middle one and the right one.


Sample Input 2

4
1 2
1 3
1 4

Sample Output 2

3

There are three possible ways to divide the vertices into pairs, as shown below, and all of them satisfy the condition.


Sample Input 3

6
1 2
1 3
3 4
1 5
5 6

Sample Output 3

10

Sample Input 4

10
8 5
10 8
6 5
1 5
4 8
2 10
3 6
9 2
1 7

Sample Output 4

672

Input

题意翻译

## 题目描述 给定一个大小为 $n$ 的树,保证 $n$ 为偶数且小于 $5000$ 您需要给树上的点两两配对,对于一组对子 $(u,v)$,在树上将 $u\to v$ 的路径染色,定义一个配对方案合法当且仅当所有边都有颜色。 求方案数对 $10^9+7$ 取模。 ## 说明/提示 $\begin{array}{l}2\le N\le 5000\\2\mid N\\\text{保证输入的一定是一棵树}\end{array}$ **样例1解释** ![](https://img.atcoder.jp/arc101/2d7584d2e0736f746aa9d54e1bf31e28.png) **样例2解释** 合法的$3$种情况如下: ![](https://img.atcoder.jp/arc101/2de530ed2e64d0161ee6b989d1946261.png)

加入题单

算法标签: