Der Dealer war schlampig und hat den Überblick verloren, welche Karten sein Deck enthält und welche Karten fehlen. Können Sie ihm helfen?
Ein komplettes Deck besteht aus 52 Spielkarten, nämlich:
Jede Farbe im Deck (Herzen, Diamanten, Pik, Keulen) enthält:
- Die Zahlen [2 - 10]
- Ein Jack
- Eine Königin
- Ein König
- Ein Ass
Aufgabe
Ihr Programm liest den Inhalt des Decks von STDIN, bis eine neue Zeile gelesen wird. Sie können davon ausgehen, dass die Eingabe in Form von "nX nX nX nX" usw. erfolgt, wobei:
- n - eine beliebige Zahl zwischen [2 - 10] oder entweder "J", "Q", "K" oder "A". (Sie können nur Großbuchstaben für nicht numerische Zeichen annehmen.)
- X - eine der folgenden Angaben: 'H', 'D', 'S', 'C' (nur Großbuchstaben möglich)
Woher:
- 'J' = Jacks
- 'Q' = Königin
- 'K' = König
- 'A' = Ass
Und
- 'H' = Herzen
- 'D' = Diamanten
- 'S' = Pik
- 'C' = Vereine
Sie können davon ausgehen, dass die Eingabe keine Duplikate enthält.
Ihr Programm muss dann die fehlenden Karten im Deck auf die gleiche Weise wie die Eingabe ("nX nX nX") auf STDOUT drucken oder "Keine fehlenden Karten" drucken, wenn alle 52 Karten geliefert werden. Die Reihenfolge der Kartenausgabe unterliegt keiner Einschränkung.
Beispiel Eingabe:
9H AH 7C 3S 10S KD JS 9C 2H 8H 8C AC AS AD 7D 4D 2C JD 6S
Ausgabe:
3H 4H 5H 6H 7H 10H JH QH KH 2D 3D 5D 6D 8D 9D 10D QD 2S 4S 5S 7S 8S 9S QS KS 3C 4C 5C 6C 10C JC QC HC
Viel Spaß beim Golfen!
Jdar 10?
2 3 4 5 6 7 8 9 10 J Q K A. Jdarstellt 11.
Jist der 10. Buchstabe des Alphabets, aber darum geht es hier nicht. :)
Tstatt verwenden10?