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
hide comments
frpartho:
20180728 22:34:31
simple dfs. increment a counter on dfs function. if counter > node*node then there is a cycle.


rohitnarayan:
20180624 23:04:46
Simple DFS!! 

mayank1208_:
20180621 23:03:31
got two WA due..to yes instead of YES....finally AC 

michaelscof:
20180621 10:52:34
DSU all the way! 

vritta:
20180618 09:33:28
did bfs but used only simple arrays, comments helped a lot. Last edit: 20180618 09:34:35 

Daniel Bezerra Galvão Mitre:
20180611 22:16:04
WA some times for testcase 0 0 

atikahamedutso:
20180609 20:03:04
accepted with tarjan's algorithm


selva1996:
20180608 10:00:24
No need DFS or DSU just a visited array works.... 

anushka_ahuja:
20180605 13:32:30
Use #DSU AC in one go!!!! 

code0monkey1:
20180406 17:31:22
DSU makes this super easy . #beware ( tot edges = tot nodes 1 , in a valid tree ) 
Added by:  ThanhVy Hua 
Date:  20070328 
Time limit:  0.166s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ERL JSRHINO 
Resource:  Coauthor Amber 