#P16526. [Dapc2024]chaotic cables

[Dapc2024]chaotic cables

题目背景

你的朋友 Claas 正在为一间新建成的计算机实验室设计网络。为了追求高效且规整的网络结构,他决定采用一种复杂的 二进制接入点配置(Binary Access Point Configuration,简称 BAPC)拓扑。

题目描述

若一个网络满足下面的条件,则称其为一个 BAPC 网络

可以给网络中的每台设备分配一个长度相同的二进制地址,并且:

  1. 两台设备之间有连线,当且仅当它们的二进制地址恰好有一位不同;
  2. 该长度下的每一种二进制地址,都恰好分配给一台设备。

Claas 已经连接了一部分设备,但面对逐渐变得复杂的线路,他开始怀疑自己搭建的网络是否真的是一个 BAPC 网络。

请判断给定网络是否为 BAPC 网络。

输入格式

第一行包含两个整数 n,mn,m,分别表示设备数量和网线数量。

接下来 mm 行,每行包含两个整数 a,ba,b,表示设备 aa 与设备 bb 之间有一条网线。

保证:

  • 2n2×1052\le n\le 2\times 10^5
  • 1m2×1051\le m\le 2\times 10^5
  • 1a,bn1\le a,b\le naba\ne b
  • 任意一对设备之间至多有一条网线。

输出格式

如果给定网络是一个 BAPC 网络,输出:

yes

否则输出:

no

样例 1

输入

4 3
1 2
2 3
1 4

输出

no

样例 2

输入

8 12
1 2
6 2
8 2
3 1
1 7
3 6
6 5
3 4
8 7
8 5
7 4
5 4

输出

yes