Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Саша очень любит настольные игры, особенно игру «Ticket to Ride». Сашины друзья однако не разделяют её энтузиазма, а больше всего им не
- #нравится запоминать новые правила в очередном дополнении к игре.
- #Специально для таких случаев (когда никто не хочет запоминать сложные правила) Саша придумала свою собственную вариацию игры — правила в ней очень простые, а для игры нужны только карточки с разноцветными вагонами.
- #Скоро у Саши день рождения и она собирается позвать всех своих многочисленных друзей и устроить вечер игры в «Ticket to Ride» (точнее, в свою упрощённую версию игры). Однако у Саши есть проблема: каждому игроку потребуется по `a(i)` карточек каждого из *`n`* цветов, а у неё их ограниченное число: всего `b(i)` штук. К счастью, дополнительно у Саши имеется ещё *k* локомотивов — карт-джокеров, которые можно использовать вместо любого цвета.
- #Саша хочет позвать как можно больше своих друзей на день рождения, помогите ей понять, сколько человек сможет одновременно играть с ней в «Ticket to Ride».
- counter_cards, jokers = list(map(int, input().split()))
- cards_for_one_player = list(map(int, input().split()))
- cards_to_need = list(map(int, input().split()))
- double_stack = []
- for i in range(len(cards_for_one_player)):
- result_delenie = cards_to_need[i] // cards_for_one_player[i]
- double_stack.append([cards_for_one_player[i], result_delenie, cards_to_need[i]])
- for index in range(len(double_stack)):
- j = index
- while j > 0 and double_stack[j][1] < double_stack[j - 1][1]:
- double_stack[j], double_stack[j - 1] = double_stack[j - 1], double_stack[j]
- j -= 1
- sorted_save_dels = []
- for index in range(len(double_stack)):
- sorted_save_dels.append(double_stack[index][1])
- set_stack = []
- for element in range(len(sorted_save_dels)):
- if sorted_save_dels[element] in set_stack:
- continue
- else:
- set_stack.append(sorted_save_dels[element])
- proxod_set = 1
- for index in range(len(double_stack)):
- while double_stack[index][2] // double_stack[index][0] != set_stack[proxod_set] and jokers != 0:
- jokers -= 1
- double_stack[index][2] += 1
- if jokers == 0:
- break
- counter = sorted_save_dels.count(double_stack[index][1])
- if counter == 1:
- proxod_set += 1
- else:
- continue
- answer_stack = []
- for i in range(len(double_stack)):
- result = double_stack[i][2] // double_stack[i][0]
- answer_stack.append(result)
- print(min(answer_stack))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement