luogu#P2348. 三国杀I(洗牌&发牌)

三国杀I(洗牌&发牌)

题目描述

一场三国杀一共有 nn 个玩家,每人需要 44 张牌。牌库共 kk 张牌,需洗牌后再发。每张牌有以下 33 个属性:

一、牌的类型:

  1. 基础:杀(K\texttt{K})、闪(M\texttt{M})、桃(P\texttt{P})、酒(W\texttt{W})。

  2. 非延时锦囊:决斗(B\texttt{B})、万箭(A\texttt{A})、南蛮(S\texttt{S})、五谷(C\texttt{C})、桃园(G\texttt{G})、拆(D\texttt{D})、顺(U\texttt{U})、铁索(T\texttt{T})、无懈(N\texttt{N})、火攻(F\texttt{F})、无中(E\texttt{E})。

  3. 延时锦囊:兵(I\texttt{I})、乐(K\texttt{K})、闪电(L\texttt{L})。

  4. 马(+,-\texttt{+,-}

  5. 武器:连弩(LN\texttt{LN})、青釭(QG\texttt{QG})、古锭(GD\texttt{GD})、寒冰(HB\texttt{HB})、雌雄(CX\texttt{CX})、吴六(WL\texttt{WL})、青龙(QL\texttt{QL})、丈八(ZB\texttt{ZB})、贯石(GS\texttt{GS})、方天(FT\texttt{FT})、羽扇(YS\texttt{YS})、麒麟(LG\texttt{LG})。

  6. 防具:仁王(RW\texttt{RW})、八阵(BZ\texttt{BZ})、藤甲(TJ\texttt{TJ})、狮子(SZ\texttt{SZ}

二、花色:只有可能是 C,H,S,D\texttt{C,H,S,D} 中的一个。

三、点数:只有可能是 A,2,3,4,5,6,7,8,9,T,J,Q,K\texttt{A,2,3,4,5,6,7,8,9,T,J,Q,K}(T代表10,从小到大)中的一个。

洗牌方式的介绍:一次洗牌过后,从上到下依次是:$\left\lfloor\dfrac{k}{2}\right\rfloor+1,1,\left\lfloor\dfrac{k}{2}\right\rfloor+2,2,\left\lfloor\dfrac{k}{2}\right\rfloor+3,3, ... ,k,\left\lfloor\dfrac{k}{2}\right\rfloor$(可以有奇数张牌,最后一张牌直接忽略掉)。

发牌方式的介绍:从第 11 张牌开始,从上到下依次将第 ii 张牌给第 [(i1)modn+1][(i-1)\mod n+1] 号玩家。

已知一共洗了 mm 次牌,现在问你第 pp 位玩家发到的 44 张牌有哪些。

输入格式

输入一共 k+1k+1 行。

第一行 44 个正整数 n,k,m,pn,k,m,p
随后 kk 行,每行两个字符串,其中第一个字符串第一个字符表示花色,第二个字符表示点数,第二个字符串表示牌的类型。输出玩家拥有的牌的时候亦按照此格式输出。

n,k,m,pn,k,m,p 的含义见题意所述。

输出格式

输出共 44 行,每行一个字符串,表示第 pp 位玩家拥有的 44 张牌(输出应包括每张牌的花色、点数和类型,格式同输入)。

如果牌数不够,输出 Error:cards not enough

2 10 1 1
C2 K
H5 B
DT K
SA M
HQ P
D4 K
C6 P
H9 M
ST B
SK C

D4 K
C6 P
H9 M
ST B

2 7 1 1
C2 K
H5 B
DT K
SA M
HQ P
SK C
C6 P

Error:cards not enough

提示

对于 100%100\% 的数据,满足 $1\leqslant p\leqslant n\leqslant 1000,1\leqslant k\leqslant 100000,1\leqslant m\leqslant 80$。