Advertisement
Guest User

Untitled

a guest
Oct 20th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. def go_sample_data():
  2. sample_data = [None] * 3
  3. sample_data[0] = {'n': 6,
  4. 'M': 3,
  5. 'Znakomstva': [(0, 1), (1, 2), (4, 5)],
  6. 'k': 2,
  7. 'Avtopark': [(3, 2), (5, 1)]}
  8. sample_data[1] = {'n': 6,
  9. 'M': 0,
  10. 'Znakomstva': [],
  11. 'k': 1,
  12. 'Avtopark': [(6, 5)]}
  13. sample_data[2] = {'n': 3,
  14. 'M': 2,
  15. 'Znakomstva': [(0, 1), (1, 2)],
  16. 'k': 1,
  17. 'Avtopark': [(2, 2)]}
  18. return sample_data
  19.  
  20.  
  21. def imput():
  22. n = input()
  23. try:
  24. n = int(n)
  25. except:
  26. return go_sample_data()
  27. M = input()
  28. M = int(M)
  29. Znakomstva = []
  30. for i in range(M):
  31. current_input = input()
  32. Znakomstva.append((int(current_input[0]), int(current_input[2])))
  33. k = input()
  34. k = int(k)
  35. Avtopark = []
  36. for i in range(k):
  37. current_input = input()
  38. Avtopark.append((int(current_input[0]), int(current_input[2])))
  39.  
  40. return [{'Znakomstva': Znakomstva, 'Avtopark': Avtopark, 'n': n, 'M': M, 'k': k}]
  41.  
  42.  
  43. def main_function(n, imput, list_taxi):
  44. res = []
  45.  
  46. for i in range(n):
  47. res.append({i})
  48.  
  49. # print (res)
  50.  
  51. # for pair in imput:
  52. # for i in range(len(res)):
  53. # if pair[0] in res[i]:
  54. # a = i
  55. # if pair[1] in res[i]:
  56. # b = i
  57. # if a != b:
  58. # res[a].update(res[b])
  59. # res.remove(res[b])
  60. pairs = imput
  61.  
  62. for pair in pairs:
  63. for index, item in enumerate(res):
  64. if pair[0] in item:
  65. a = index
  66. if pair[1] in item:
  67. b = index
  68. if a != b:
  69. res[a].update(res[b])
  70. res.pop(b)
  71.  
  72. # print (res)
  73.  
  74. number = []
  75.  
  76. for i in res:
  77. number.append(len(i))
  78. number.sort(reverse=True)
  79.  
  80. tokse = []
  81.  
  82. # for i in list_taxi:
  83. # for _ in range(i[1]):
  84. # tokse.append(i[0])
  85.  
  86. for taxi in list_taxi:
  87. cars = [taxi[0]]*taxi[1]
  88. tokse.extend(cars)
  89.  
  90. tokse.sort(reverse=True)
  91. # print (number)
  92. # print (tokse)
  93.  
  94. if len(number) > len(tokse):
  95. return 0
  96. else:
  97. for i in range(len(number)):
  98. if number[i] > tokse[i]:
  99. return 0
  100. return 1
  101.  
  102. # main code
  103.  
  104. data = imput()
  105.  
  106. for item in data:
  107. print(main_function(item['n'], item['Znakomstva'],item['Avtopark']))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement