Примеры

мега решение ручками

Untitled

from itertools import *

k = 0
for x in product('0123456789abcd',repeat=5):
    s = ''.join(x)
    if s[0]!='0' and len(set(s))==2 and s[-1] in '03':
        k += 1
print(k)

TIP 1:

ЧИСЛО НЕ МОЖЕТ НАЧИНАТЬСЯ С НУЛЯ

if str[0] == ‘0’:

#DONT COUNT continue

БИБЛИОТЕКА from itertools import *

product(str key, int repeat) - создает генератор, в котором все возможные комбинации из символов строки key, длина комбинации - repeat

EXAMPLE:

from itertools import *
a = product('123', repeat=2) # второй аргумент обязательно прописывать через repeat=
for i in a:
    print(i)

Данный код выведет все комбинации из строки 123 длиною в 2 символа:

('1', '1') ('1', '2') ('1', '3') ('2', '1') ('2', '2') ('2', '3') ('3', '1') ('3', '2') ('3', '3')

permutations(str key, int repeat) - создает генератор, в котором все комбинации из символов строки key, при этом используя только данные символы, без повторов, длина комбинации - repeat

from itertools import *
a = permutations('123', 3)
for i in a:
    print(i)

Данный код выведет комбинации используя только 123 длиною в 3 символа:

('1', '2', '3') ('1', '3', '2') ('2', '1', '3') ('2', '3', '1') ('3', '1', '2') ('3', '2', '1')

Для примера вот это выведет продукт вместо пермутэйшнс:

('1', '1', '1') ('1', '1', '2') ('1', '1', '3') ('1', '2', '1') ('1', '2', '2') ('1', '2', '3') ('1', '3', '1') ('1', '3', '2') ('1', '3', '3') ('2', '1', '1') ('2', '1', '2') ('2', '1', '3') ('2', '2', '1') ('2', '2', '2') ('2', '2', '3') ('2', '3', '1') ('2', '3', '2') ('2', '3', '3') ('3', '1', '1') ('3', '1', '2') ('3', '1', '3') ('3', '2', '1') ('3', '2', '2') ('3', '2', '3') ('3', '3', '1') ('3', '3', '2') ('3', '3', '3')

Если в условии сказано, что в строке не повторяются символы, то используем permutations и не ебем мозги)