Задача к ЕГЭ по информатике на тему «практика программирования» №3

Напишите рекурсивную функцию, которая была бы аналогом функции itertools.combinations  . На вход она должна принимать строку и параметр repeat  , из элементов которой будут генерироваться сочетания длиной repeat  .

В качестве ответа укажите результат выполнения функции для строки длины 2  для строки ABC  .

def combinations(ans, s, r):
    if r == 0:
        print(ans)
    elif r <= len(s):
        for i in range(len(s)):
            s_new = ’’
            for j in range(i+1, len(s)):
                s_new += s[j]

            combinations(ans + s[i], s_new, r - 1)

s = ’ABC’
combinations(’’, s, 2)

Ответ: AB AC BC
Оцените статью
Я решу все!