Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- import os
- if not os.environ.get("ONLINE_JUDGE"):
- sys.stdin = open('./in.txt', 'r')
- sys.stdout = open('./out.txt', 'w')
- for _ in range(int(input())):
- n,m =map(int,input().split())
- odd_nodes = []
- even_nodes = []
- al = [[] for _ in range(n+1)]
- visited = [False]*(n+1)
- level = [sys.maxsize]*(n+1)
- for _ in range(m):
- u,v = map(int,input().split())
- al[u].append([v,0])
- al[v].append([u,0])
- # print(*al)
- queue = [1]
- level[1] = 0
- even_nodes.append(1)
- visited[1] = True
- while queue:
- u = queue[0]
- queue.pop(0)
- for edges in al[u]:
- v,w = edges
- if not visited[v]:
- visited[v] = True
- queue.append(v)
- level[v] = level[u]+1
- if level[v] %2 == 0:
- even_nodes.append(v)
- else:
- odd_nodes.append(v)
- if len(even_nodes) > len(odd_nodes):
- print(len(odd_nodes))
- print(*odd_nodes)
- else:
- print(len(even_nodes))
- print(*even_nodes)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement