CF1769D3.Игра в Девятку III

提高+/省选-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

В этой версии задачи нужно найти 2626 раскладов с различными значениями важности первого хода.

Алиса и Боб решили сыграть в карточную игру «Девятка». Пожалуйста, внимательно прочитайте условие задачи, поскольку правила могут отличаться от известных вам.

Для игры нужна стандартная колода из 3636 карт — по девять карт (от шестёрки до туза) каждой из четырёх мастей (трефы, бубны, пики и черви). Карты по достоинству от младшей к старшей идут следующим образом: шестёрка, семёрка, восьмёрка, девятка, десятка, валет, дама, король, туз.

Перед игрой колода перемешивается, и каждому игроку раздаётся по 1818 карт. Карты нужно выкладывать из руки на стол по определённым правилам. Выигрывает игрок, который первым выложит все карты из своей руки.

Игроки ходят по очереди. Ход игрока имеет один из следующих видов:

  • выложить на стол из своей руки девятку любой масти;
  • выложить на стол шестёрку, семёрку или восьмёрку любой масти, если на столе уже лежит карта той же масти достоинством на единицу выше;
  • выложить на стол десятку, валета, даму, короля или туза любой масти, если на столе уже лежит карта той же масти достоинством на единицу ниже.

Например, девятку пик можно выложить на стол в любой момент, для выкладывания семёрки треф необходимо наличие на столе восьмёрки треф, а для выкладывания туза червей необходимо наличие на столе короля червей.

Если игрок не может выложить на стол ни одну карту из своей руки, то ход переходит к сопернику. Обратите внимание: нельзя пропустить ход просто так — всегда необходимо выложить карту на стол корректным образом, если это возможно.

Помимо того, что каждый игрок стремится избавиться от карт в своей руке, Алиса и Боб также хотят, чтобы в конце игры в руке у их соперника карт осталось как можно больше, а в их руке — как можно меньше. Напомним, что игра заканчивается, как только один из игроков выкладывает на стол последнюю карту из своей руки.

Результатом игры назовём совокупность из информации о том, кто из двух игроков выиграет при оптимальной игре, а также о том, сколько карт останется в руке у проигравшего.

Пусть Алиса и Боб уже взяли в руки свои 1818 карт каждый, но ещё не решили, кто из них будет ходить первым. Величиной важности первого хода для данного расклада назовём абсолютную разность между результатами игры в случае, если первой будет ходить Алиса, и в случае, если первым будет ходить Боб.

Например, если в обоих случаях выиграет Боб, но в одном случае у Алисы останется 66 карт в руке в конце игры, а во втором — всего 22, то величина важности первого хода равна 44. Если же в одном случае выиграет Алиса и у Боба останется 55 карт в руке, а во втором случае выиграет Боб и у Алисы останется 33 карты в руке, то величина важности первого хода равна 88.

Ребята хотят узнать, насколько разной бывает величина важности первого хода для разных раскладов. По заданному числу k≤26k \le 26 помогите им найти такие kk раскладов, что величины важности первого хода для всех них — различные целые числа.

在本题版本中,你需要找出 2626 种不同的牌局(即初始手牌分配),使得它们各自对应的第一步重要性值互不相同。

爱丽丝和鲍勃决定玩一种名为“九”的纸牌游戏。请仔细阅读题目条件,因为其规则可能与你所熟知的有所不同。

游戏使用一副标准的 3636 张牌——四种花色(梅花、方块、黑桃、红桃)各 99 张,点数从六到A(即:6、7、8、9、10、J、Q、K、A)。各点数由小到大的顺序为:六、七、八、九、十、J、Q、K、A。

游戏开始前,整副牌被充分洗匀,然后每位玩家各发 1818 张牌。玩家需按特定规则,将手中牌逐一打出至桌面。率先打光手中全部牌的玩家获胜。

两位玩家轮流行动。每一步行动有以下三种类型之一:

  • 从手中打出任意花色的一张 9;
  • 从手中打出任意花色的一张 6、7 或 8,当且仅当桌面上已存在同花色、点数恰好高 1 的牌;
  • 从手中打出任意花色的一张 10、J、Q、K 或 A,当且仅当桌面上已存在同花色、点数恰好低 1 的牌。

例如:黑桃 9 可在任意时刻打出;要打出梅花 7,桌面上必须已有梅花 8;要打出红桃 A,则桌面上必须已有红桃 K。

若某玩家无法从手中合法打出任何一张牌,则轮到对手行动。注意:不可主动跳过回合——只要存在至少一种合法出牌方式,就必须执行一次合法出牌。

除了努力尽快清空自己的手牌外,爱丽丝和鲍勃还希望:游戏结束时,对手剩余的手牌尽可能多,而自己剩余的手牌尽可能少。再次强调:游戏在某位玩家打出其最后一张手牌的瞬间立即结束。

我们将一局游戏的结果定义为一个组合信息,包含两项内容:(1)在双方均采用最优策略的前提下,哪位玩家获胜;(2)失败方在游戏结束时手中剩余的牌数。

假设爱丽丝和鲍勃均已拿到各自的 1818 张手牌,但尚未决定谁先手。我们定义该牌局的第一步重要性值为:当爱丽丝先手时的游戏结果,与当鲍勃先手时的游戏结果,二者之间的绝对差值。

例如:若两种情况下鲍勃均获胜,但爱丽丝剩余手牌数分别为 66 和 22,则第一步重要性值为 ∣6−2∣=4|6 - 2| = 4;若一种情况是爱丽丝获胜且鲍勃剩余 55 张牌,另一种情况是鲍勃获胜且爱丽丝剩余 33 张牌,则第一步重要性值为 ∣5+3∣=8|5 + 3| = 8(注:此处结果以“胜者身份 + 败者剩余张数”为整体度量,故差值为两败者剩余张数之和)。

两位玩家想了解:不同牌局下,第一步重要性值的变化范围究竟有多大。现给定整数 k≤26k \le 26,请你帮他们找出 kk 个牌局,使得这 kk 个牌局对应的第一步重要性值互不相同,且均为整数。

输入格式

В единственной строке задано целое число kk (2≤k≤262 \le k \le 26) — число необходимых раскладов.

В задаче три теста. В первом тесте k=2k = 2, во втором тесте k=13k = 13, в третьем тесте k=26k = 26.

在唯一的一行中,给出一个整数 kk(2≤k≤262 \le k \le 26)——所需排列的数量。

本题包含三个测试用例。第一个测试用例中 k=2k = 2,第二个测试用例中 k=13k = 13,第三个测试用例中 k=26k = 26。

输出格式

Выведите kk пар строк. Каждая пара строк должна соответствовать некоторому раскладу. Величины важности первого хода для всех выведенных раскладов должны быть различными целыми числами.

В первой строке каждой пары выведите 1818 строк длины 22 через пробел, описывающих карты Алисы в любом порядке. Первый символ строки должен обозначать достоинство карты — символ из набора 6, 7, 8, 9, T, J, Q, K, A, обозначающий шестёрку, семёрку, восьмёрку, девятку, десятку, валета, даму, короля и туза соответственно. Второй символ строки должен обозначать масть карты — символ из набора C, D, S, H, обозначающий трефы, бубны, пики и черви соответственно.

Во второй строке выведите 1818 строк длины 22 через пробел, описывающих карты Боба в том же формате.

Каждая из 3636 возможных карт должна находиться в руке одного из двух игроков в единственном экземпляре.

输出 kk 对字符串。每对字符串需对应一个合法的发牌方案。所有输出的发牌方案中,先手重要性值(即 first move importance)必须是互不相同的整数。

在每对字符串的第一行中,请输出 1818 个长度为 22 的字符串,以空格分隔,描述爱丽丝所持的 1818 张牌,顺序任意。每个字符串的第一个字符表示牌的点数,取自集合 {6, 7, 8, 9, T, J, Q, K, A},分别代表六、七、八、九、十、杰克(J)、皇后(Q)、国王(K)和王牌(A);第二个字符表示牌的花色,取自集合 {C, D, S, H},分别代表梅花(Clubs)、方块(Diamonds)、黑桃(Spades)和红桃(Hearts)。

在每对字符串的第二行中,请以相同格式输出 1818 个长度为 22 的字符串,以空格分隔,描述鲍勃所持的 1818 张牌。

全部 3636 种可能的牌(即 99 种点数 ×4\times 4 种花色)必须恰好各出现一次,且每张牌仅属于两名玩家中的一人。

输入输出样例

  • 输入#1

    2

    输出#1

    KS QD 8D QC 8S 8C JD 9H AC TH 9S 9D QH 7H 8H TS 7S 9C
    6D JS 7D KH QS TC AD AS KC 6C 7C TD AH KD 6S JC JH 6H
    
    JC JS 8S TD JD KH 7D 9C KC TH QD 8D 7H TC KD 9H 8C 6D
    7S AC QH AD 8H TS 6H JH 6C AH 7C 6S 9D QC AS QS KS 9S

说明/提示

В первом выведенном раскладе все девятки находятся в руке у Алисы. Даже если Боб будет ходить первым, ему всё равно придётся пропустить первый же свой ход. Следовательно, первый ход при таком раскладе имеет важность 00.

Во втором выведенном раскладе вне зависимости от того, чьим будет первый ход, выиграет Алиса. Однако если Алиса будет ходить первой, то у Боба в конце игры в руке останется одна карта, а если же она будет ходить второй, то у Боба останется пять карт. Соответственно, величина важности первого хода при таком раскладе равна 44.

在第一个给出的牌局中,所有9都在爱丽丝手中。即使鲍勃先手,他也必须跳过自己的第一个回合。因此,在该牌局中,先手的重要性为 00。

在第二个给出的牌局中,无论谁先手,爱丽丝都将获胜。然而,如果爱丽丝先手,则游戏结束时鲍勃手中将剩余1张牌;而如果爱丽丝后手,则鲍勃手中将剩余5张牌。因此,该牌局中先手的重要性为 44。

输入解题思路,AI测评打分。不知道怎么写?

首页