01 3 езда вперед до определения препятствия на расстоянии меньше 5 см 0 SO 1 Рис. 1 01 П < езда вперед 5 оборотов 30 3 Рис. 2 01 ## езда вперед до определения черной ЛИНИИ 5 #
В задаче нам гарантируется, что на ввод подаются исключительно числа. При чем даже заданы ограничения с которыми они подаются, так что мы можем избавить себя от их валидации и сразу приступить к обработке.
Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (1 строка кода).
Затем, нам надо получить все элементы последовательности. Но нам не обязательно работать с ними, как с числами, так как с нас не требуют математических операций. Так что просто оставляем их в виде строк (2 строка кода).
Далее, необходимо убрать все лишние значения (не оканчивающиеся на 3) и оставить только нужные. Для этого используем стандартную функцию filter, в которой проверяем последние символы строк на соответствие "3" (строка кода 3).
Осталось только посчитать количество оставшихся строк и вывести результат (строка кода 4).
Код:
N = int(input())
sequence = [input() for _ in range(N)] # Вводим числа
Из города А можно попасть в города B-2, C-4, D-8, F-16.
16 - многовато. Поищем другие пути.
Если учесть, что мне не возвращаемся в посещенные точки, то всего можно насчитать 7 путей:
A-F = 16A-C-D-E-F = 17A-B-D-F = 8A-D-E-F = 18A-D-F = 11A-B-D-E-F = 15A-C-D-F = 10Оставляем только пути, которые проходят через точку E:
A-C-D-E-F = 17A-D-E-F = 18A-B-D-E-F = 15Рассчитывая стоимость путей, получаем, что минимальная длина пути = 15. (путь A-B-D-E-F).
ответ: 15
Если ответ устроил, то не забудь отметить его как "Лучший".
В задаче нам гарантируется, что на ввод подаются исключительно числа. При чем даже заданы ограничения с которыми они подаются, так что мы можем избавить себя от их валидации и сразу приступить к обработке.
Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (1 строка кода).
Затем, нам надо получить все элементы последовательности. Но нам не обязательно работать с ними, как с числами, так как с нас не требуют математических операций. Так что просто оставляем их в виде строк (2 строка кода).
Далее, необходимо убрать все лишние значения (не оканчивающиеся на 3) и оставить только нужные. Для этого используем стандартную функцию filter, в которой проверяем последние символы строк на соответствие "3" (строка кода 3).
Осталось только посчитать количество оставшихся строк и вывести результат (строка кода 4).
Код:
N = int(input())
sequence = [input() for _ in range(N)] # Вводим числа
sequence = list(filter(lambda x: x[-1] == "3", sequence)) # Отсеиваем лишние
print(len(sequence)) # Сколько осталось?
Если ответ устроил, не забудь отметить его как "Лучший".