Herausforderung:
Bestimmen Sie bei zwei Fünf-Karten-Händen anhand der Standardrangfolge der Pokerblätter , welche gewinnt .
Eingang:
Zehn durch Leerzeichen von stdin oder als Befehlszeilenargumente getrennte Karten, je nachdem, was Sie bevorzugen. Die ersten fünf Karten sind die Hand von Spieler 1, während die letzten fünf die Hand von Spieler 2 sind. Jede Karte besteht aus zwei Buchstaben der Form RS, wobei R Rang und S Farbe ist. Die Ränge reichen von 2-9, T für zehn und J, Q, K und A für Jack, Queen, King und Ace. Die Farben sind H, D, C, S für Herzen, Diamanten, Keulen und Pik. Sie müssen die Nummer des Spielers ausgeben, der gewinnt: '1' oder '2'.
Beispiele für Karten:
AS - the Ace of Spades
QD - the Queen of Diamonds
2C - the Two of Clubs
TH - the Ten of Hearts
Input to Output Beispiele:
5H 5C 6S 7S KD 2C 3S 8S 8D TD -> 2
Erklärung: Spieler 1 hat ein Paar Fünfer, während Spieler 2 ein Paar Acht hat.
5D 8C 9S JS AC 2C 5C 7D 8S QH -> 1
Erläuterung: Keiner der Spieler hat etwas Besonderes, aber die hohe Karte von Spieler 1 ist ein Ass, während die hohe Karte von Spieler 2 eine Dame ist.
2D 9C AS AH AC 3D 6D 7D TD QD -> 2
Erklärung: Spieler 1 hat drei Asse, Spieler 2 hat einen Flush of Diamonds.
4D 6S 9H QH QC 3D 6D 7H QD QS -> 1
Erläuterung: Beide Spieler haben ein Paar Damen, aber die zweithöchste Karte von Spieler 1 ist eine Neun, während die von Spieler 2 eine Sieben ist.
Regeln und Erläuterungen:
- Weitere Informationen zum Vergleichen von Händen finden Sie in der Standardrangliste der Pokerblätter.
- Sie können davon ausgehen, dass es keine wiederholten Karten in jedem Paar Hände gibt.
- Sie können davon ausgehen, dass es jeweils einen konkreten Gewinner gibt.
- Die Farbe berücksichtigt nicht die Rangfolge einer Hand. Zum Beispiel sind zwei Royal Flushes unterschiedlicher Farben gleich (daher ist jede Eingabe, bei der beide Spieler einen Royal Flush haben, nach der vorstehenden Regel ungültig).
- Da dies Codegolf ist, gewinnt die kürzeste Antwort.
Anmerkungen:
- Bezogen auf diese und diese Frage .
- Basierend auf Projekt Euler Problem 54