CF1769D1.Игра в Девятку I
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
В этой версии задачи нужно определить, кто выиграет в карточной игре для двух игроков в заданном раскладе при оптимальной игре обоих соперников.
Алиса и Боб решили сыграть в карточную игру «Девятка». Пожалуйста, внимательно прочитайте условие задачи, поскольку правила могут отличаться от известных вам.
Для игры нужна стандартная колода из 36 карт — по девять карт (от шестёрки до туза) каждой из четырёх мастей (трефы, бубны, пики и черви). Карты по достоинству от младшей к старшей идут следующим образом: шестёрка, семёрка, восьмёрка, девятка, десятка, валет, дама, король, туз.
Перед игрой колода перемешивается, и каждому игроку раздаётся по 18 карт. Карты нужно выкладывать из руки на стол по определённым правилам. Выигрывает игрок, который первым выложит все карты из своей руки.
Игроки ходят по очереди. Ход игрока имеет один из следующих видов:
- выложить на стол из своей руки девятку любой масти;
- выложить на стол шестёрку, семёрку или восьмёрку любой масти, если на столе уже лежит карта той же масти достоинством на единицу выше;
- выложить на стол десятку, валета, даму, короля или туза любой масти, если на столе уже лежит карта той же масти достоинством на единицу ниже.
Например, девятку пик можно выложить на стол в любой момент, для выкладывания семёрки треф необходимо наличие на столе восьмёрки треф, а для выкладывания туза червей необходимо наличие на столе короля червей.
Если игрок не может выложить на стол ни одну карту из своей руки, то ход переходит к сопернику. Обратите внимание: нельзя пропустить ход просто так — всегда необходимо выложить карту на стол корректным образом, если это возможно.
Вам дан расклад карт в начале игры. Алиса будет ходить первой. Определите, кто первым избавится от всех своих карт и выиграет, если оба игрока будут пытаться победить и играть оптимально.
本题版本要求:在给定的初始牌局下,判断两名玩家均采用最优策略时,谁将在双人纸牌游戏“九点”中获胜。
爱丽丝和鲍勃决定玩一款名为“九点”的纸牌游戏。请仔细阅读题目规则,因为其规则可能与您已知的有所不同。
游戏使用一副标准的 36 张牌——四种花色(梅花、方块、黑桃、红桃)各九张,点数分别为 6 至 A(即六、七、八、九、十、J、Q、K、A)。牌按点数从小到大排序为:六、七、八、九、十、J、Q、K、A。
游戏开始前,整副牌被洗匀,并向每位玩家发 18 张牌。玩家需按照特定规则,从手牌中依次将牌打出至桌面。首位将手中所有牌全部打出的玩家获胜。
玩家轮流进行回合。每回合玩家必须执行以下操作之一:
- 从手牌中打出任意花色的一张 9;
- 从手牌中打出任意花色的一张 6、7 或 8,当且仅当 桌面上已存在同花色、且点数恰好高 1 的牌;
- 从手牌中打出任意花色的一张 10、J、Q、K 或 A,当且仅当 桌面上已存在同花色、且点数恰好低 1 的牌。
例如:黑桃 9 可在任意时刻打出;要打出梅花 7,桌面上必须已有一张梅花 8;要打出红桃 A,则桌面上必须已有一张红桃 K。
若某玩家无法从手牌中合法打出任何一张牌,则轮到对手行动。注意:不允许无故跳过回合——只要存在至少一种合法出牌方式,就必须以合法方式打出一张牌。
现给出游戏初始时双方的手牌分布。爱丽丝先行。假设双方均竭力取胜并采取最优策略,请判断最终谁将率先打完全部手牌并获胜。
输入格式
В первой строке задано 18 строк длины 2 через пробел, описывающих карты Алисы в случайном порядке. Первый символ строки обозначает достоинство карты — символ из набора 6, 7, 8, 9, T, J, Q, K, A, обозначающий шестёрку, семёрку, восьмёрку, девятку, десятку, валета, даму, короля и туза, соответственно. Второй символ строки обозначает масть карты — символ из набора C, D, S, H, обозначающий трефы, бубны, пики и черви, соответственно.
Во второй строке задано 18 строк длины 2 через пробел, описывающих карты Боба в том же формате.
Каждая из 36 возможных карт находится в руке одного из двух игроков в единственном экземпляре.
В задаче 100 тестов. Все тесты сгенерированы случайным образом.
第一行包含 18 个长度为 2 的字符串,以空格分隔,描述爱丽丝手中的牌(顺序随机)。每个字符串的第一个字符表示牌的点数,取自集合 {6, 7, 8, 9, T, J, Q, K, A},分别代表六、七、八、九、十、杰克(J)、皇后(Q)、国王(K)和王牌(A);第二个字符表示牌的花色,取自集合 {C, D, S, H},分别代表梅花(Clubs)、方块(Diamonds)、黑桃(Spades)和红桃(Hearts)。
第二行同样包含 18 个长度为 2 的字符串,以空格分隔,描述鲍勃手中的牌,格式同上。
全部 36 种可能的牌在两名玩家手中各出现一次,且仅出现一次。
本题共 100 个测试用例,所有测试用例均为随机生成。
输出格式
Выведите Alice, если при оптимальной игре выиграет Алиса, и Bob в противном случае.
如果在双方都采取最优策略的情况下爱丽丝获胜,则输出 Alice,否则输出 Bob。
输入输出样例
输入#1
JD 7S 9S JS 8S 9D 6D 8C 8D TH KS QD QH TD 6C AD KD AC KH QC 9H 6H KC 9C JC TS 6S QS TC JH 7D 7H AS AH 7C 8H
输出#1
Alice
输入#2
7S KD 8C AH QS AC KS JC 6C 7D 9H TS 7C 6D JH JD 6S KC 8D QD AS TD AD TH KH 9S JS 9C QC 8S 8H 7H TC QH 9D 6H
输出#2
Bob
输入#3
6C 7S 6H KS 9C 6S QS 7C TS JD 8H KC 9D 8C 7H KD JC QC 6D TH TD AD JS 9H TC QD 8D AC JH AH KH AS 7D 8S 9S QH
输出#3
Alice
输入#4
JS KS JD TH KH JC KC QD AS JH 6H 9H 7H 6C 9D AC 6D 9S 8D 8H 7C 7S KD 7D 6S QH 8C TS AD TD TC 9C QC 8S QS AH
输出#4
Bob
输入#5
6S KC TD 8S AC 9S KD TS TH 7D 7C KH TC QC JH QD JC JD QH AS 9H 6C 8C 9C 6D AH AD KS JS 7H 6H 8H 9D QS 7S 8D
输出#5
Bob
输入解题思路,AI测评打分。不知道怎么写?