Valid Sets
题意翻译
给定 $n$ 个点的树,点有点权,求满足最大点权与最小点权之差小于等于 $d$ 的连通子图数目。答案对 $10^9 + 7$ 取模。
题目描述
As you know, an undirected connected graph with $ n $ nodes and $ n-1 $ edges is called a tree. You are given an integer $ d $ and a tree consisting of $ n $ nodes. Each node $ i $ has a value $ a_{i} $ associated with it.
We call a set $ S $ of tree nodes valid if following conditions are satisfied:
1. $ S $ is non-empty.
2. $ S $ is connected. In other words, if nodes $ u $ and $ v $ are in $ S $ , then all nodes lying on the simple path between $ u $ and $ v $ should also be presented in $ S $ .
3. ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF486D/178986cc3145e106df7e442d141768e61c090be6.png).
Your task is to count the number of valid sets. Since the result can be very large, you must print its remainder modulo $ 1000000007 $ ( $ 10^{9}+7 $ ).
输入输出格式
输入格式
The first line contains two space-separated integers $d$ ($0 \le d \le 2000$) and $n$ ($1 \le n \le 2000$).
The second line contains $n$ space-separated positive integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 2000$).
Then the next $n - 1$ line each contain pair of integers $u$ and $v$ ($1 \le u, v \le n$) denoting that there is an edge between $u$ and $v$. It is guaranteed that these edges form a tree.
输出格式
Print the number of valid sets modulo $ 1000000007 $ .
输入输出样例
输入样例 #1
1 4
2 1 3 2
1 2
1 3
3 4
输出样例 #1
8
输入样例 #2
0 3
1 2 3
1 2
2 3
输出样例 #2
3
输入样例 #3
4 8
7 8 7 5 4 6 4 10
1 6
1 2
5 8
1 3
3 5
6 7
3 4
输出样例 #3
41
说明
In the first sample, there are exactly 8 valid sets: $ {1},{2},{3},{4},{1,2},{1,3},{3,4} $ and $ {1,3,4} $ . Set $ {1,2,3,4} $ is not valid, because the third condition isn't satisfied. Set $ {1,4} $ satisfies the third condition, but conflicts with the second condition.