Ошибка.
Попробуйте повторить позже
Исполнитель Щелчок преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены номера:
1. Прибавить 2.
2. Прибавить 5.
3. Умножить на 2.
Первая команда увеличивает число на 2, вторая – на 5, третья – умножает на 2. Сколько различных результатов можно получить из исходного числа 8 после выполнения программы, содержащей 13 команд, если известно, что запрещено повторять команду, сделанную на предыдущем шаге.
Решение 1:
a = [[8, ’0’]] for i in range(13): n = len(a) for j in range(n): l = a.pop(0) last_command = l[1] if last_command == ’0’: a.append([l[0] + 2, ’1’]) a.append([l[0] + 5, ’2’]) a.append([l[0] * 2, ’3’]) elif last_command == ’1’: a.append([l[0] + 5, ’2’]) a.append([l[0] * 2, ’3’]) elif last_command == ’2’: a.append([l[0] + 2, ’1’]) a.append([l[0] * 2, ’3’]) else: a.append([l[0] + 2, ’1’]) a.append([l[0] + 5, ’2’]) arr = set() for i in range(len(a)): arr.add(a[i][0]) print(len(arr))
Решение 2:
s = set() def f(a, k=0, r=0): if k == 13: s.add(a) return if r != 1: f(a + 2, k + 1, 1) if r != 2: f(a + 5, k + 1, 2) if r != 3: f(a * 2, k + 1, 3) f(8) print(len(s))
Специальные программы
Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!
Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.
Бесплатное обучение
в Школково
Для детей ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Брянской областей, а также школьникам, находящимся в пунктах временного размещения Крыма обучение на платформе бесплатное.
Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».
Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ или олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!
Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!