CF1067B.Multihedgehog

普及+/提高

通过率:0%

时间限制:1.00s

内存限制:256MB

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 33 (we will call it center) and all other vertices has degree 1. Ivan thought that hedgehog is too boring and decided to make himself kk-multihedgehog.

Let us define kk-multihedgehog as follows:

  • 11-multihedgehog is hedgehog: it has one vertex of degree at least 33 and some vertices of degree 1.
  • For all k≥2k \ge 2, kk-multihedgehog is (k−1)(k-1)-multihedgehog in which the following changes has been made for each vertex vv with degree 1: let uu be its only neighbor; remove vertex vv, create a new hedgehog with center at vertex ww and connect vertices uu and ww with an edge. New hedgehogs can differ from each other and the initial gift.

Thereby kk-multihedgehog is a tree. Ivan made kk-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 kk-multihedgehog.

有人送给了伊万一个奇怪的生日礼物:一只“刺猬图”——一种连通的无向图,其中恰好有一个顶点的度数至少为 33(我们称其为中心),其余所有顶点的度数均为 11。伊万觉得刺猬图太无聊了,于是决定为自己构造一只 kk-重刺猬图(kk-multihedgehog)。

我们递归地定义 kk-重刺猬图如下:

  • 11-重刺猬图即为刺猬图:它包含一个度数至少为 33 的顶点,以及若干个度数为 11 的顶点;
  • 对任意 k≥2k \ge 2,kk-重刺猬图是由 (k−1)(k-1)-重刺猬图经过如下变换得到的:对每个度数为 11 的顶点 vv,设其唯一邻接顶点为 uu;移除顶点 vv,新建一只刺猬图,将其中心设为新顶点 ww,并添加一条连接 uu 与 ww 的边。这些新加入的刺猬图彼此之间可以不同,也可以与初始礼物不同。

因此,kk-重刺猬图是一棵树。伊万已构造出一棵 kk-重刺猬图,但他不确定自己是否犯了错误。因此,他请你帮忙验证:他所构造的这棵树是否确实是一只 kk-重刺猬图。

输入格式

First line of input contains 22 integers nn, kk (1≤n≤1051 \le n \le 10^{5}, 1≤k≤1091 \le k \le 10^{9}) — number of vertices and hedgehog parameter.

Next n−1n-1 lines contains two integers uu vv (1≤u,  v≤n;  u≠v1 \le u, \,\, v \le n; \,\, u \ne v) — indices of vertices connected by edge.

It is guaranteed that given graph is a tree.

输入的第一行包含两个整数 nn 和 kk(1≤n≤1051 \le n \le 10^{5},1≤k≤1091 \le k \le 10^{9})——分别为顶点数和刺猬参数。

接下来的 n−1n-1 行每行包含两个整数 uu 和 vv(1≤u,  v≤n1 \le u, \,\, v \le n;u≠vu \ne v)——表示由一条边连接的两个顶点的编号。

保证给定的图是一棵树。

输出格式

Print "Yes" (without quotes), if given graph is kk-multihedgehog, and "No" (without quotes) otherwise.

如果给定的图是 kk-多重刺猬图,则输出 "Yes"(不带引号);否则输出 "No"(不带引号)。

输入输出样例

  • 输入#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 1313. 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 33.

第一个样例中的 2-多重刺猬图如下所示:

其中心顶点为 1313。最后一步构造出的刺猬图分别为:

4\text{(中心)},\ 1,\ 2,\ 3$$, $$6\text{(中心)},\ 7,\ 8,\ 9$$, $$5\text{(中心)},\ 10,\ 11,\ 12,\ 13$$。 第二个样例中的树不是刺猬图,因为其中心顶点的度数至少应为 $3$。

输入解题思路,AI测评打分。不知道怎么写?

首页