CF1067B.Multihedgehog
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Someone give a strange birthday present to Ivan. It is hedgehog — connected undirected graph in which one vertex has degree at least 3 (we will call it center) and all other vertices has degree 1. Ivan thought that hedgehog is too boring and decided to make himself k -multihedgehog.
Let us define k -multihedgehog as follows:
- 1 -multihedgehog is hedgehog: it has one vertex of degree at least 3 and some vertices of degree 1.
- For all k≥2 , k -multihedgehog is (k−1) -multihedgehog in which the following changes has been made for each vertex v with degree 1: let u be its only neighbor; remove vertex v , create a new hedgehog with center at vertex w and connect vertices u and w with an edge. New hedgehogs can differ from each other and the initial gift.
Thereby k -multihedgehog is a tree. Ivan made k -multihedgehog but he is not sure that he did not make any mistakes. That is why he asked you to check if his tree is indeed k -multihedgehog.
输入格式
First line of input contains 2 integers n , k ( 1≤n≤105 , 1≤k≤109 ) — number of vertices and hedgehog parameter.
Next n−1 lines contains two integers u v ( 1≤u,v≤n;u=v ) — indices of vertices connected by edge.
It is guaranteed that given graph is a tree.
输出格式
Print "Yes" (without quotes), if given graph is k -multihedgehog, and "No" (without quotes) otherwise.
输入输出样例
输入#1
14 2 1 4 2 4 3 4 4 13 10 5 11 5 12 5 14 5 5 13 6 7 8 6 13 6 9 6
输出#1
Yes
输入#2
3 1 1 3 2 3
输出#2
No
说明/提示
2-multihedgehog from the first example looks like this:
Its center is vertex 13 . Hedgehogs created on last step are: [4 (center), 1, 2, 3], [6 (center), 7, 8, 9], [5 (center), 10, 11, 12, 13].
Tree from second example is not a hedgehog because degree of center should be at least 3 .