Advertisement
Guest User

Untitled

a guest
Apr 28th, 2017
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. size, node = map(int, input().split())
  2. data = [list(map(int, input().split())) for _ in range(size)]
  3.  
  4.  
  5. def get_nodes_list(graph):
  6. return [[neighbour for neighbour in range(len(row)) if row[neighbour]] for row in graph]
  7.  
  8.  
  9. def make_dict(graph):
  10. nodes = get_nodes_list(graph)
  11. return {i: nodes[i] for i in range(len(nodes))}
  12.  
  13.  
  14. def print_dict(graph):
  15. nodes = get_nodes_list(graph)
  16. [print("{:^3}".format(i), nodes[i]) for i in range(len(nodes))]
  17.  
  18.  
  19. def dfs(graph, visited, node=0):
  20. n = len(graph)
  21. visited[node] = True
  22. print("we are at the ", node, "level")
  23. for i in range(n):
  24. if graph[node][i] and not visited[i]:
  25. print(node, i, "- getting deeper")
  26. dfs(data, visited, i)
  27.  
  28. visit_list = [False for _ in range(size)]
  29. dfs(data, visit_list, node)
  30. print("total: ", sum(visit_list))
  31. print("here`s our graph: ")
  32. print_dict(data)
  33.  
  34. # Их правда 4
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement