Gegeven twee lijsten met gehele getallen, zoek de langste lijst van gehele getallen waarbij de elementen tot beide oorspronkelijke lijsten behoren.

Beschouw bijvoorbeeld de lijsten [1, 2, 3, 4, 4, 5] en [8, 3, 4, 7, 6, 4]. De langste lijst die je kan maken zodat elk element tot de oorspronkelijke lijst behoort is dan [3, 4, 4].

Gevraagd

Schrijf een functie gemeenschappelijk(lijst1, lijst2) die gegeven twee lijsten de grootste gemeenschappelijke deellijst bepaalt.

Voorbeelden

>>> gemeenschappelijk([1, 2, 3, 4, 4, 5], [8, 3, 4, 7, 6, 4])
[3, 4, 4]

Bron

Gebaseerd op probleem Common Permutation, Universiteit van Valladolid (UVa).