ACM中的ACM题
题号:NC278707
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

无聊的你回想起了A 题的三角形,于是你想到了一个新的问题:
在一个连通图中,任何一条边都属于一个集合
如果两条边 a,b 属于同一个集合当且仅当满足以下条件之一
1.  a,b 是某一个三角形的两条边
2. 存在边 c ,使得 a,c 属于同一个集合且 b,c 属于同一个集合

那么请问,以下连通图的所有边是否都属于同一个集合?

输入描述:

第一行输入 T ,表示 T 组样例
每组样例第一行输入两个正整数 n,m
接下来 m 行,第i行输入两个正整数 a_i, b_i,表示第i条边连接 a_i, b_i结点

1\le T\le 10;~2\le n\le 2× 10^5;~1\le m\le 2× 10^5;~n-1\le m;~1\le a_i,b_i\le n
\sum_{i=1}^{T} n \le 2× 10^5;~ \sum_{i=1}^{T} m \le 2× 10^5
数据保证图联通,且没有重边和自环

输出描述:

输出一个字符串表示答案
是输出 "Yes"
否输出 "No"
示例1

输入

复制
1
3 3
1 2
1 3
3 2

输出

复制
Yes
示例2

输入

复制
1
4 5
1 2
1 4
2 3
2 4
3 4

输出

复制
Yes
示例3

输入

复制
1
3 2
1 2
1 3

输出

复制
No
示例4

输入

复制
1
4 4
1 2
1 4
2 3
3 4

输出

复制
No

备注: