Форум » Кодирование и декодирование информации » задание 8 демоверсии 2023 » Ответить

задание 8 демоверсии 2023

s11kai: Константин Юрьевич, здравствуйте! Задание №8 демоверсии 2023 решил через рассуждения, и ответ сошелся, но очень хочется понять или посмотреть на готовое решение данной задачи через функции модуля itertools, у самого, к сожалению не получается. a=1*3*7*7*7 #количество комбинаций когда 6 на первом месте b=6*7*7*3*1 #количество комбинаций когда 6 на пятом месте c=2*1*3*7*7 #количество комбинаций когда 6 на втором месте d=6*3*1*3*7 #количество комбинаций когда 6 на третьем месте e=6*7*3*1*3 #количество комбинаций когда 6 на четвертом месте print(a+b+c+d+e) Подскажите, пожалуйста, как это сделать. Спасибо!!!

Ответов - 4

Поляков: Например, так:[pre2] from itertools import product count = 0 for n in product('01234567', repeat=5): n = ['.'] + list(n) + ['.'] # барьеры с двух сторон if n[1] != '0' and n.count('6') == 1: i = n.index('6') if n[i-1] not in '1357' and n[i+1] not in '1357': count += 1 print( count )[/pre2]

s11kai: Спасибо, Константин Юрьевич! Вроде, даже все понятно, кроме может быть этой строки: Поляков пишет: n = ['.'] + list(n) + ['.'] # барьеры с двух сторон это что-то вроде тега? Буду исследовать...

Поляков: s11kai пишет: это что-то вроде тега? Буду исследовать... Это просто для того, чтобы слева и справа от 6 всегда был какой-то символ, чтобы не обрабатывать отдельно случаи, когда цифра 6 первая или последняя.


s11kai: Век живи, век учись! Спасибо огромное, Константин Юрьевич!



полная версия страницы