PT07Y - Is it a tree

You are given an unweighted, undirected graph. Write a program to check if it's a tree topology.

Input

The first line of the input file contains two integers N and M --- number of nodes and number of edges in the graph (0 < N <= 10000, 0 <= M <= 20000). Next M lines contain M edges of that graph --- Each line contains a pair (u, v) means there is an edge between node u and node v (1 <= u, v <= N).

Output

Print YES if the given graph is a tree, otherwise print NO.

Example

Input:
3 2
1 2
2 3

Output:
YES

Added by:Thanh-Vy Hua
Date:2007-03-28
Time limit:0.5s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO
Resource:Co-author Amber

hide comments
2021-01-19 13:43:46
Try graphs like this one:
7 6
3 3
7 6
1 5
7 4
6 7
2 4
NO
2021-01-19 11:42:16
Keep the following edge cases in mind:
1 0
YES
0 0
NO
2020-10-16 19:55:17
For tree:-
Number of connected components=1.
Number of edges should be 1 less than number of vertices.
These 2 conditions are enough to get AC:)
2020-10-02 13:48:36
just make sure to type YES and not Yes . i hate it
2020-09-24 23:29:07
AND WHAT IF I DONT? YOUR PROBLEMS ARE NOT MY PROBLEMS.
2020-09-22 05:04:52
GUYS LISTEN! FOR TLE -> USE ADJACENCY LIST NOT MATRIX. SIMPLE DFS WORKS AS A CHARM!!
2020-09-18 06:38:23
simple observation may help : 1 connected component and no cycle..:)
2020-09-05 11:31:00
i submitted two solutions 1st for directed and second for undirected.Both got accepted.
2020-08-19 10:37:15
easy disjoint set union problem
2020-08-18 13:53:43
simple dfs will do the the work
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.