Исполнитель июнь15 преобразует число на экране. у исполнителя есть две команды, которым присвоены номера:
1. прибавить 1
2. умножить на 3
сколько существует программ, для которых при исходном числе 4 результатом является число 50 и при этом траектория вычислений содержит число 6 и не содержит число 12?
по таблице
def parse(array:list):
suitable = []
for item in array:
if str(item)[::-1] == '4':
suitable.append(item)
return suitable
def main():
nums = [int(i) for i in input().split()]
assert sum(nums) <= 30000
assert len(nums) <= 1000
suitable = parse(nums)
try:
print(min(suitable))
except ValueError:
print('0')
if __name__ == '__main__':
main()
Объяснение:
Сайт гарантированно сломает код, по скриншоту его можно восстановить.
Принцип работы:
Получаем на вход список чисел
Утверждение - сумма всех элементов меньше 30 000
Утверждение - всего в списке не более 1000 элементов
Если одно из утверждений не верно, программа завершает работу с ошибкой AssertionError (Ошибка утверждения)
Прогоняем список через функцию parse, результат сохраняем в переменную suitable (подходящие)
Пытаемся вывести на экран минимальный элемент списка suitable.
Если список пуст, будет возбуждено исключение ValueError, перехватываем его, вместе ошибки выводим в консоль 0
Функция Parse: <= Список
Локальная переменная suitable типа list (список)
Для каждого элемента списка, переданного функции -
Если последний символ в строковом представлении элемента списка есть 4 - добавляем в список suitable, иначе - пропускаем итерацию
Возвращаем список suitable