Вызов:
Учитывая две руки из пяти карт, определите, какая из них выигрывает, используя стандартный рейтинг покерных рук .
Входные данные:
Десять карт отделяются пробелами от стандартного ввода или в качестве аргументов командной строки, в зависимости от того, что вы предпочитаете. Первые пять карт - рука Игрока 1, а последние пять - рука Игрока 2. Каждая карта представляет собой двухбуквенную строку в форме RS, где R - ранг, а S - масть. Ранги варьируются от 2 до 9, T для десяти, и J, Q, K и A для Джека, Королевы, Кинга и Туза соответственно. Костюмы H, D, C, S для сердец, бриллиантов, треф и пиков соответственно. Вы должны вывести номер игрока, который выиграл: «1» или «2».
Примеры карт:
AS - the Ace of Spades
QD - the Queen of Diamonds
2C - the Two of Clubs
TH - the Ten of Hearts
Примеры ввода в вывод:
5H 5C 6S 7S KD 2C 3S 8S 8D TD -> 2
Объяснение: У игрока 1 есть пара пятерок, а у игрока 2 - пара восьмерок.
5D 8C 9S JS AC 2C 5C 7D 8S QH -> 1
Объяснение: Ни у одного из игроков нет ничего особенного, но старшая карта Игрока 1 - Туз, а старшая Карта Игрока 2 - Королева.
2D 9C AS AH AC 3D 6D 7D TD QD -> 2
Пояснение: у игрока 1 есть три туза, у игрока 2 - флеш алмазов.
4D 6S 9H QH QC 3D 6D 7H QD QS -> 1
Объяснение: у обоих игроков есть пара ферзей, но вторая по величине карта Игрока 1 - это Девять, а у Игрока 2 - Семерка.
Правила и разъяснения:
- Обратитесь к стандартному рейтингу покерных комбинаций, чтобы узнать подробности сравнения рук.
- Вы можете предположить, что в каждой паре рук нет повторяющихся карт.
- Вы можете предположить, что в каждом конкретном случае есть определенный победитель.
- Костюм не учитывается в рейтинге рук. Например, два флеш-рояля разных мастей равны (поэтому любой вход, в котором у обоих игроков флеш-рояль недействителен по предыдущему правилу).
- Поскольку это кодовый гольф, выигрывает самый короткий ответ.
Примечания:
- Связанный с этим вопросом и этим .
- Основано на задаче Эйлера проекта 54