300843: CF161D. Distance in Tree
Memory Limit:512 MB
Time Limit:3 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Distance in Tree
题意翻译
## 题目大意 输入点数为$N$一棵树 求树上长度恰好为$K$的路径个数 ## 输入格式 第一行两个数字$N,K$,如题意 接下来的$N-1$行中,每行两个整数$u,v$表示一条树边$(u,v)$ ## 输出格式 一个整数$ans$,如题意 在$Codeforces$上提交时记得用$\%I64d$哦.QwQ ## 数据范围 $1 \leq n \leq 50000$ $1 \leq k \leq 500$ 感谢@Zhang_RQ 提供的翻译题目描述
A tree is a connected graph that doesn't contain any cycles. The distance between two vertices of a tree is the length (in edges) of the shortest path between these vertices. You are given a tree with $ n $ vertices and a positive number $ k $ . Find the number of distinct pairs of the vertices which have a distance of exactly $ k $ between them. Note that pairs ( $ v $ , $ u $ ) and ( $ u $ , $ v $ ) are considered to be the same pair.输入输出格式
输入格式
The first line contains two integers $ n $ and $ k $ ( $ 1<=n<=50000 $ , $ 1<=k<=500 $ ) — the number of vertices and the required distance between the vertices. Next $ n-1 $ lines describe the edges as " $ a_{i} $ $ b_{i} $ " (without the quotes) ( $ 1<=a_{i},b_{i}<=n $ , $ a_{i}≠b_{i} $ ), where $ a_{i} $ and $ b_{i} $ are the vertices connected by the $ i $ -th edge. All given edges are different.
输出格式
Print a single integer — the number of distinct pairs of the tree's vertices which have a distance of exactly $ k $ between them. Please do not use the %lld specifier to read or write 64-bit integers in С++. It is preferred to use the cin, cout streams or the %I64d specifier.
输入输出样例
输入样例 #1
5 2
1 2
2 3
3 4
2 5
输出样例 #1
4
输入样例 #2
5 3
1 2
2 3
3 4
4 5
输出样例 #2
2