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
gboduljak:
2017-02-25 21:50:09
should be moved to tutorial, |
|
rohit9934:
2017-02-13 17:15:02
4 hours in front of PC,2 hours of testing,1 hour of No and then Green Tick <3 . |
|
programminator:
2017-02-13 09:08:47
beautiful solution using union-find |
|
cipher_097:
2017-02-12 13:57:13
Weak test cases. Admin, please check the test cases once again. Last edit: 2017-02-12 13:57:37 |
|
cake_is_a_lie:
2017-02-10 17:45:00
IMO it's easier to code using union-find than BFS/DFS, since you don't even need to keep the edges in memory. |
|
soodan:
2016-12-23 07:28:04
Spoilers:
|
|
madhavgaba:
2016-12-20 08:33:04
Use the fact that a tree has n-1 edges and DFS from one node visits all the nodes........green in first go;) |
|
gyanchand:
2016-12-19 18:16:48
use adjacency list instead of adjacency matrix @reconnect as v*v>>e i.e. it will be sparse matrix.lead to waste of time on traversing.
|
|
praney_rai:
2016-12-19 08:39:33
did it using simple bfs!! first graph problem :] (out of the world feeling :D) |
|
nikunjsoni:
2016-12-13 15:29:11
Check the condition of N = 1 |
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 |