Advertisement
George_Zagorsky_1

L.2

Dec 9th, 2021
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.22 KB | None | 0 0
  1. #Саша очень любит настольные игры, особенно игру «Ticket to Ride». Сашины друзья однако не разделяют её энтузиазма, а больше всего им не
  2. #нравится запоминать новые правила в очередном дополнении к игре.
  3.  
  4. #Специально для таких случаев (когда никто не хочет запоминать сложные правила) Саша придумала свою собственную вариацию игры — правила в ней очень простые, а для игры нужны только карточки с разноцветными вагонами.
  5.  
  6. #Скоро у Саши день рождения и она собирается позвать всех своих многочисленных друзей и устроить вечер игры в «Ticket to Ride» (точнее, в свою упрощённую версию игры). Однако у Саши есть проблема: каждому игроку потребуется по `a(i)` карточек каждого из *`n`* цветов, а у неё их ограниченное число: всего `b(i)` штук. К счастью, дополнительно у Саши имеется ещё *k* локомотивов — карт-джокеров, которые можно использовать вместо любого цвета.
  7.  
  8. #Саша хочет позвать как можно больше своих друзей на день рождения, помогите ей понять, сколько человек сможет одновременно играть с ней в «Ticket to Ride».
  9.  
  10.  
  11.  
  12. counter_cards, jokers = list(map(int, input().split()))
  13. cards_for_one_player = list(map(int, input().split()))
  14. cards_to_need = list(map(int, input().split()))
  15. double_stack = []
  16.  
  17. for i in range(len(cards_for_one_player)):
  18.     result_delenie = cards_to_need[i] // cards_for_one_player[i]
  19.     double_stack.append([cards_for_one_player[i], result_delenie, cards_to_need[i]])
  20.  
  21. for index in range(len(double_stack)):
  22.     j = index
  23.     while j > 0 and double_stack[j][1] < double_stack[j - 1][1]:
  24.         double_stack[j], double_stack[j - 1] = double_stack[j - 1], double_stack[j]
  25.         j -= 1
  26.  
  27. sorted_save_dels = []
  28. for index in range(len(double_stack)):
  29.     sorted_save_dels.append(double_stack[index][1])
  30. set_stack = []
  31.  
  32. for element in range(len(sorted_save_dels)):
  33.     if sorted_save_dels[element] in set_stack:
  34.         continue
  35.     else:
  36.         set_stack.append(sorted_save_dels[element])
  37. proxod_set = 1
  38.  
  39. for index in range(len(double_stack)):
  40.     while double_stack[index][2] // double_stack[index][0] != set_stack[proxod_set] and jokers != 0:
  41.         jokers -= 1
  42.         double_stack[index][2] += 1
  43.     if jokers == 0:
  44.         break
  45.     counter = sorted_save_dels.count(double_stack[index][1])
  46.     if counter == 1:
  47.         proxod_set += 1
  48.     else:
  49.         continue
  50.  
  51. answer_stack = []
  52.  
  53. for i in range(len(double_stack)):
  54.     result = double_stack[i][2] // double_stack[i][0]
  55.     answer_stack.append(result)
  56.  
  57. print(min(answer_stack))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement