Een hand kaarten wordt voorgesteld via een lijst van strings, waarbij een kaart als volgt gecodeerd wordt als string:

Op die manier staan de strings 'H3' en 'SB' respectievelijk voor harten 3 en schoppen boer.

In een bepaald kaartspel is het de bedoeling om zo weinig kaarten over te houden, en hiertoe mag een speler een paar kaarten verwijderen. Dit paar MOET een paar zijn van kaarten met dezelfde kleur EN dezelfde waarde ('H3' en 'R3' is een dergelijk paar). Harten (H) en ruiten (R) zijn hierbij rood, en schoppen (S) en klaveren (K) zwart.

Schrijf een recursieve methode verwijder_paren() met als enig argument een lijst van strings, die een hand kaarten voorstelt zoals hierboven beschreven. Je mag aannemen dat elke kaart hoogstens 1 keer voorkomt in deze argument lijst. Het resultaat van de functie is een lijst van kaarten, waaruit alle paren die kunnen verwijderd worden (rekening houdend met bovenstaande regels) ook verwijderd werden. Op deze verwijdering na, is de resultaatlijst identiek aan de argumentlijst (dus de volgorde van kaarten die niet verwijderd werden, blijft behouden).

LET OP: je code MOET recursief geprogrammeerd worden, en mag dus geen lusconstructies of comprehensies bevatten.

Voorbeeld

verwijder_paren(['H1', 'S7', 'RB', 'R1', 'R2', 'HB' ])
= ['S7', 'R2']