B4391 [常州市赛 2025] 拖拉机
题目背景
搬运自 。数据为民间数据。
题目描述
欢乐谷是企鹅公司开发的一个棋牌类益智游戏平台,玩家第一次进平台时,企鹅公司会发给每个玩家一定数量的欢乐豆,欢乐豆是企鹅公司最常用的道具之一,可用来玩平台上的各种游戏,属于一种游戏中的虚拟货币。
欢乐谷既有围棋、象棋、桥牌等烧脑游戏,也有 $80$ 分升级(俗称拖拉机)这种广受欢迎的雅俗共赏的经典扑克游戏,该游戏由两副牌四个人玩,分为两个阵营,$1$ 号玩家和 $3$ 号玩家为一个阵营,$2$ 号玩家和 $4$ 号玩家则组成另一个阵营。发牌逆时针进行,牌的大小区分简单,主牌大于副牌,主牌中大小王最大。出牌时需按照规则出对子或拖拉机等,尽量出大牌得分。庄家需尽最大努力保住底牌,如果最后被撬底则得分翻番,具体翻几番要看撬底是单张、对子、拖拉机。玩家需注意对手的牌,尽量让对手得分不超过 $80$ 分。
$80$ 分升级有一套复杂的结算规则,首先根据出牌中拖拉机的出现次数、得分情况和撬底番数,得出最终的应胜豆和应输豆,应胜豆等于应输豆。一局开始前四位玩家的欢乐豆数量是已知的,假设 $1$ 号玩家和 $3$ 号玩家取得胜利,应胜豆为 180 欢乐豆,则一局升级下来正常情况下 $1$ 号玩家和 $3$ 号玩家的欢乐豆都将增加 $180$ 颗,$2$ 号玩家和 $4$ 号玩家的欢乐豆都将减少 $180$ 颗,但实际情况往往不会这么理想,如果 $2$ 号玩家欢乐豆不足 $180$ 颗,则 $2$ 号玩家输光所有欢乐豆,当一家的欢乐豆变成 $0$ 后就不可能再输了。$1$ 号玩家和 $3$ 号玩家平分赢得的欢乐豆,前提是开局前的欢乐豆的数量要不小于赢得的欢乐豆总数的一半。具体的结算规则如下:
- 假设四位玩家游戏开始前的欢乐豆数量用 $A,B,C,D$ 表示,应输豆用 $E$ 表示,并且胜方为 $1$ 号玩家和 $3$ 号玩家,$\min$ 函数为求两个数的最小值的函数,如 $\min(3,5)=3$。
1. 计算输方理论上的总输豆 $F$,本条规则中的输豆均指理论上的输豆的简称,$F=2\texttt{\,\small号玩家输豆} +4\texttt{\,\small号玩家输豆}$,其中 $2\texttt{\,\small号玩家输豆}=\min(B,E)$,$4\texttt{\,\small号玩家输豆}=\min(D,E)$。
2. 计算胜方最终胜豆,假设 $F$ 是偶数,则 $1\texttt{\,\small号玩家最终胜豆}=\min(A,\frac F2),3\texttt{\,\small号玩家最终胜豆}=\min(C,\frac F2)$。
3. 输豆返还,如果 $\min(A,\frac F2)+\min(C,\frac F2)
输入格式
输入数据仅有一行包含 $5$ 个用空格隔开的正整数,分别表示 $A,B,C,D,E$,$5$ 个数保证都是 $8$ 的倍数。
输出格式
输出数据仅有一行包含 $4$ 个正整数,表示一局结束后四家的欢乐豆数量,相邻两数严格用一个空格隔开。
说明/提示
### 样例 $\textbf 1$ 解释
四家开始前的欢乐豆数量均大于应输豆,应输豆为 $800$,则根据规则 $1$ 和 $2$ 不难算出,胜方每家增加 $800$ 欢乐豆,输方每家减少 $800$ 欢乐豆。
### 样例 $\textbf 2$ 解释
应输豆 $E=4800$,则根据规则 $1$,$2\texttt{\,\small号玩家输豆}=\min(B,E)=\min(4000,4800)=4000$,$4\texttt{\,\small号玩家输豆}=\min(D,E)=\min(20000,4800)=4800$,总输豆 $F=2\texttt{\,\small号玩家输豆}+4\texttt{\,\small号玩家输豆}=4000+4800=8800$,$\frac F2=4400$。
再根据规则 $2$ 算出,$1\texttt{\,\small号玩家最终胜豆}=\min(A,\frac F2)=\min(6400,4400)=4400,3\texttt{\,\small号玩家最终胜豆}=\min(C,\frac F2)=\min(3600,4800)=3600$。
胜方总共赢得 $8000$ 欢乐豆,少于总输豆,此时要把余下的 $800$ 欢乐豆返还输家,根据规则 $3$:由于 $4$ 号玩家输得多,则先返还给 $4$ 号玩家,恰好把 $800$ 欢乐豆全部返还给 $4$ 号玩家,此时两家输方输得一样多,返还结束,最终 $1$ 号玩家欢乐豆增加 $4400$,$3$ 号玩家欢乐豆增加 $3600$,两家输方各减少 $4000$ 欢乐豆。
### 样例 $\textbf 3$ 解释
应输豆 $E=9600$,则根据规则 $1$,$2\texttt{\,\small号玩家输豆}=\min(B,E)=\min(6600,9600)=6600,4\texttt{\,\small号玩家输豆}=\min(D,E)=\min(9736,9600)=9600$,总输豆 $F=2\texttt{\,\small号玩家输豆}+4\texttt{\,\small号玩家输豆}=6600+9600=16200$,$\frac F2=8100$。
再根据规则 $2$ 算出,$1\texttt{\,\small号玩家最终胜豆}=\min(A,\frac F2)=\min(20000,8100)=8100,3\texttt{\,\small号玩家最终胜豆}=\min(C,\frac F2)=\min(3200,8100)=3200$。
胜方总共赢得 $11300$ 欢乐豆,少于总输豆,此时要把余下的 $4900$ 欢乐豆返还输家,根据规则 $3$:由于 $4$ 号玩家输得多,则先返还给 $4$ 号玩家 $3000$ 欢乐豆,此时两家输方输得一样多,尚余 $1900$ 欢乐豆,按规则 $3$ 要平均返还给两家输方各 $950$ 欢乐豆,最终 $1$ 号玩家欢乐豆增加 $8100$,$3$ 号玩家欢乐豆增加 $3200$,两家输方各减少 $5650$ 欢乐豆。
### 数据范围
本任务共有 $10$ 个数据。
对于所有数据:输入数据均不超过 $10^9$,且每个数都是 $8$ 的倍数。
|测试点编号|特殊性质|
|:-:|:-:|
|$1$|$A=B=C=D=E$|
|$2\sim4$|结算时不会用到规则 $3$|
|$5\sim7$|结算时会用到规则 $3$,但输豆只会返还一家|
|$8\sim10$|无|