Используя Python, как вы уменьшаете список списков с помощью упорядоченного совпадения подмножеств [[..],[..],..]
?
В контексте этого вопроса список L представляет собой подмножество списка M
, если M
содержит все элементы L
, и в том же порядке. Например, список [1,2] является подмножеством списка [1,2,3], но не списка [2,1,3].
Пример ввода:
a. [[1, 2, 4, 8], [1, 2, 4, 5, 6], [1, 2, 3], [2, 3, 21], [1, 2, 3, 4], [1, 2, 3, 4, 5, 6, 7]]
b. [[2, 16, 17], [1, 2, 3, 4, 5, 6, 7], [1], [1, 2, 3, 4], [1, 2], [17, 18, 19, 22, 41, 48], [2, 3], [1, 2, 3], [50, 69], [1, 2, 3], [2, 3, 21], [1, 2, 3], [1, 2, 4, 8], [1, 2, 4, 5, 6]]
Ожидаемый результат:
a. [[1, 2, 4, 8], [2, 3, 21], [1, 2, 3, 4, 5, 6, 7]]
b. [[2, 16, 17], [1, 2, 3, 4, 5, 6, 7], [17, 18, 19, 22, 41, 48], [50, 69], [2, 3, 21], [1, 2, 4, 8], [1, 2, 4, 5, 6]]
Дополнительные примеры:
L = [[1, 2, 3, 4, 5, 6, 7], [1, 2, 5, 6]]
- без уменьшения
L = [[1, 2, 3, 4, 5, 6, 7],
[1, 2, 3]
, [1, 2, 4, 8]]
- Да, уменьшить
L = [[1, 2, 3, 4, 5, 6, 7], [7, 6, 5, 4, 3, 2, 1]]
- без уменьшения
(извините за путаницу с неправильным набором данных.)