СРОЧНО!
Садоводы решили увеличить урожай вишен и черешен. Для этого они предложили между каждыми двумя вишнями сажать хотя бы одну черешню. Теперь в саду нельзя сажать две вишни подряд. Все деревья в каждом ряду высаживаются в виде прямой аллеи.
Для каждой аллеи вам известно количество саженцев вишен и количество саженцев черешен, которые на ней можно посадить (для разных аллей эти числа могут различаться).
Номер аллеи
Максимальное количество вишен
Максимальное количество черешен
1
3
6
2
7
5
3
10
10
4
15
7
Используя данную информацию, определите максимальную длину каждой аллеи — максимально возможное количество деревьев в ней с учетом правил высаживания.
Ответом на данную задачу является набор из четырех целых чисел, равных максимальной длине первой, второй, третьей и четвертой аллеи соответственно. Ответ для каждого случая требуется записать в отдельной строки.
Если Вы не можете дать ответ для какой-то из аллей, то запишите в качестве ответа для данной аллеи любое число.
Рассмотрим пример. Допустим, что на какой-то аллее разрешено посадить не более 2 вишен и не более 4 черешен. Ниже на рисунке приведен один из оптимальных вариантов посадки деревьев: ЧВЧВЧЧ (Ч — черешня, В — вишня).
Ответы
Ответ дал:
0
Ответ:
9
11
20
15
Код:
def VishniChereshni(mas):
mas = sorted(mas, key=lambda x: x[0]) # сортируем массив по первому элементу
for (i, vishni, cherry) in mas: # проходимся по всему массиву
# print(i, vishni, cherry, vishni + cherry)
res = vishni + cherry if vishni - cherry <= 1 else 2 * cherry + 1
print(res)
VishniChereshni([[1, 3, 6], [3, 10, 10], [4, 15, 7] , [2, 7, 5]])
# способ ввода не описан, потому выбран наиболее удобны - через массивы
Вас заинтересует
1 год назад
1 год назад
1 год назад
2 года назад
2 года назад
8 лет назад
8 лет назад