Напишите функцию, которая будет проверять, можно ли из чисел во вложенном списке составить целевой список.
Функция принимает список списков и целевой список и возвращает True или False.
Порядок чисел в списках не имеет значения (см. пример 2).
Из всех чисел во вложенном списке должен получиться набор чисел из целевого списка в точности. Не может быть ни лишних чисел (включая повторы), ни недостающих (см. примеры 3 и 4).
Примеры
canConcatenate([[1, 2, 3, 4], [5, 6], [7]], [1, 2, 3, 4, 5, 6, 7]) ➞ True canConcatenate([[2, 1, 3], [5, 4, 7, 6]], [7, 6, 5, 4, 3, 2, 1]) ➞ True canConcatenate([[2, 1, 3], [5, 4, 7, 6, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ False # В целевом списке только одна 7, а во вложенном их две. canConcatenate([[2, 1, 3], [5, 4, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ False # Во вложенном списке нет 6.
Вариант решения
def canConcatenate(lst, target): return sorted(sum(lst,[])) == sorted(target)