Не запускается скрипт для вывода правильной последовательности скобок

152
30 августа 2021, 19:50

Есть код на для вывода правильной последовательности n элементов, переписал его под python, но он не работает. В чём моя ошибка?

JS:

    function getCombinations(space) { 
    const result = [];
    for (let i = 0; i < space; ++i) {
        const leftSpace = i;
        const rightSpace = space - i - 1;
        const leftCombinations = leftSpace > 0 ? getCombinations(leftSpace) : [''];
        const rightCombinations = rightSpace > 0 ? getCombinations(rightSpace) : [''];
        for (const left of leftCombinations) {
            for (const right of rightCombinations) {
                result.push(`(${left})${right}`);
            }
        }
    }
    return result;
}
console.log(getCombinations(2));

Вот код на Python, который не работает:

def get_combinations(space):
  result = []
  for i in range(space):
    left_space = i
    right_space = space - i - 1
    left_combinations = get_combinations(left_space) if left_space > 0 else ['']
    right_combinations = get_combinations(right_space) if right_space > 0 else ['']
  for left in left_combinations:
    for right in right_combinations:
      result.append(f'({left}{right})')
  get_combinations(2)

Результат для 2 должен быть такой:

[ '()()', '(())' ]
Answer 1

Написано же: "Ожидается отступ."

def get_combinations(space):
    result = []
    ...

Зачем Вы на ходу меняете содержание вопроса так, что ответ становится бессмысленным?

Ладно. Теперь не мешало бы вернуть из Вашей функции значение.

def get_combinations(space):
    ...
    return result
READ ALSO
new (функция конструктор)

new (функция конструктор)

Когда вызываешь функцию с new, то берется конструктор этой функции и создается объектКак можно вызвать такую функцию так, чтобы она вернула...

180
Как из строки вытащить число на javascript

Как из строки вытащить число на javascript

Как из строки такого вида "20:153" "1568:23" вытащить число после двоеточия?

87
Вывод даты + 60 дней в input value [дубликат]

Вывод даты + 60 дней в input value [дубликат]

Как можно реализовать (скриптом) вывод сегодняшней даты +60 днейТо есть, если сегодня, например, 07

81
Отправка email через php

Отправка email через php

Имеется форма

102