Сколько существует чисел, восьмеричная запись которых обладает следующими свойствами:
состоит из 6 цифр;
содержит ровно две цифры, причем не стоящие рядом;
между этими двумя тройками находятся только цифры, числовое значение которых больше, чем.
Ответ
Ответ:
8116
Решение
from itertools import product
def valid(s): if s.count('3') != 2: return False elif '33' in s: return False else: st, fin = (i for i in range(len(s)) if s[i] == '3') t = s[st + 1: fin] if any(ch in t for ch in '012'): return False return True
alph = '01234567' q = 0 for p in product(alph, repeat=6): if p[0] == '0': continue q += int(valid(''.join(p))) print(q)