欢乐谷是企鹅公司开发的一个棋牌类益智游戏平台,玩家第一次进平台时,企鹅公司会发给每个玩家一定数量的欢乐豆,欢乐豆是企鹅公司最基本使用的道具之一,可用来玩平台上的各种游戏,属于一种游戏中的虚拟货币。
欢乐谷既有围棋、象棋、桥牌等烧脑游戏,也有80分升级(俗称拖拉机)这种广受欢迎的雅俗共赏的经典牌类游戏,该游戏由两副牌四个人玩,分为两个阵营,1号玩家和3号玩家为一个阵营,2号玩家和4号玩家则组成另一个阵营。发牌逆时针进行,牌的大小区分简单,主牌大于副牌,主牌中大小王最大。出牌时需按照规则出对子或拖拉机等,尽量出大牌得分。庄家需保住底牌,最后如果被撬底则得分翻番,具体翻几番要看撬底是单张、对子、拖拉机。玩家需注意对手的牌,尽量让对手得分不超过80分。
80分升级有一套复杂的结算规则,首先根据出牌中拖拉机的出现次数、得分情况和撬底番数,得出最终的应胜豆和应输豆,应胜豆等于应输豆。一局开始前四位玩家的欢乐豆数量是已知的,假设1号玩家和3号玩家取得胜利,应胜豆为180欢乐豆,则一局升级下来1号玩家和3号玩家的欢乐豆都将增加180颗, 2号玩家和4号玩家的欢乐豆都将减少180颗,但实际情况往往不会这么理想,如果2号玩家欢乐豆不足180颗,则2号玩家输光所有欢乐豆,1号玩家和3号玩家平分赢得的欢乐豆,前提是开局前的欢乐豆的数量要不小于赢得的欢乐豆数量。具体的结算规则如下:
假设四位玩家游戏开始前的欢乐豆数量用A、B、C、D表示,应输豆用E表示,并且胜方为1号玩家和3号玩家,min函数为求两数最小值函数,如min(3,5)=3。
1、计算负方理论上的总输豆F,本条规则中的输豆均为理论上的输豆的简称,F=2号玩家输豆+4号玩家输豆,其中2号玩家输豆=min(B,E),4号玩家输豆=min(D,E)。
2、计算胜方最终胜豆,假设F肯定是偶数,则1号玩家最终胜豆=min(A,F/2),3号玩家最终胜豆=min(C,F/2)。
3、输豆返还,如果min(A,F/2)+min(C,F/2)<F,则胜方并没有瓜分完负方理论上的总输豆,此时要把胜方分剩下的欢乐豆返还给输家,返还规则为先返还给输方中输得多的一方,直到返还完或两家输方输的欢乐豆同样多,然后将未返还完的欢乐豆平分给两家输方。具体细节见样例3的解释。
现在企鹅公司找到你,要你写一个80分升级的结算程序。为了简单起见,假设胜方永远是1号玩家和3号玩家。
输入数据仅有一行包含5个用空格隔开的正整数,分别表示A,B,C,D,E,5个数一定都是8的倍数。
输出数据仅有一行包含4个正整数,表示一局结束后四家的欢乐豆数量,相邻两数严格用一个空格隔开。
样例输入1
2400 2400 1000 2000 800
样例输入2
6400 4000 3600 20000 4800
样例输入3
20000 6600 3200 9736 9600
样例输出1
3200 1600 1800 1200
样例输出2
10800 0 7200 16000
样例输出3
28100 950 6400 4086
样例解释
对于样例1:
四家开始前的欢乐豆数量均大于应输豆,应输为800,则根据规则1和2不难算出,胜方每家增加800欢乐豆,输方每家减少800欢乐豆
对于样例2:
应输豆E=4800,则根据规则1:2号玩家输豆=min(B,E)=min(4000,4800)=4000,4号玩家输豆=min(D,E)=min(20000,4800)=4800,总输豆F=2号玩家输豆+4号玩家输豆=4000+4800=8800,F/2=4400;
再根据规则2算出,1号玩家最终胜豆=min(A,F/2)=min(6400,4400)=4400,3号玩家最终胜豆=min(C,F/2)=min(3600,4800)=3600,
胜方总共赢得8000欢乐豆,少于总输豆,此时要把余下的800欢乐豆返还输家,根据规则3:由于4号玩家输得多,则先返还给4号玩家,恰好把800欢乐豆全部返还给4号玩家,此时两家输方输得一样多,返还结束,最终1号玩家欢乐豆增加4400,3号玩家欢乐豆增加3600,两家输方输各输4000欢乐豆。
对于样例3:
应输豆E=9600,则根据规则1:2号玩家输豆=min(B,E)=min(6600,9600)=6600,4号玩家输豆=min(D,E)=min(9736,9600)=9600,总输豆F=2号玩家输豆+4号玩家输豆=6600+9600=16200,F/2=8100;
再根据规则2算出,1号玩家最终胜豆=min(A,F/2)=min(20000,8100)=8100,3号玩家最终胜豆=min(C,F/2)=min(3200,8100)=3200,
胜方总共赢得11300欢乐豆,少于总输豆,此时要把余下的4900欢乐豆返还输家,根据规则3:由于4号玩家输得多,则先返还给4号玩家3000欢乐豆,此时两家输方输得一样多,还余1900欢乐豆平均返还给两家输方各950欢乐豆,最终1号玩家欢乐豆增加8100,3号玩家欢乐豆增加3200,两家输方输各输5650欢乐豆。
数据范围
本题共有10个测试点,每个测试点10分。
对于所有测试点:输入数据均不超过10^9,且每个数都是8的倍数。
对于测试点1:输入的5个数相等。
对于测试点2-4:结算时不会用到规则3。
对于测试点5-7:结算时会用到规则3,但输豆只会返还一家。