问题 4241 --(BNU2006新生邀请赛) 星际争霸之单挑

4241: (BNU2006新生邀请赛) 星际争霸之单挑

时间限制: 1 Sec  内存限制: 256 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

星际争霸是一款很著名的即时战略游戏,由暴雪公司出品。游戏故事以人族,虫族和神族三个种族间的战争作为背景。 玩家可以选择任何一个种族与电脑或者其他玩家对抗。其中:小狗,机枪兵,龙骑分别为这三个种族的一种兵种。 星际之间的人族,虫族和神族之间的斗争终于以合平方式结束,大家决定成立联合族,你被幸运地选为联合族的族长。不过族长也不是好当的,种族之间常常有小规模的冲突需要你来解决。当前刚刚发生一场冲突: 因为信仰和种族不同,不同等级的小狗,机枪兵,龙骑决定进行一对一的单挑,但是作为三个种族组成的联合族族长的你害怕由此产生三个种族间的战争。所以,你决定用电脑来模拟单挑结果,这样大家就不用发生流血冲突了。 规则: 每个兵由:生命值,攻击力,防御力来描述。每次攻击发生时,被攻击的兵的生命值减少量=攻击者的攻击力-被攻击者的防御力。如果攻击者的攻击力-被攻击者的防御力<0,则生命值减少量为0。 攻击由回合制来进行,即A,B两个对手轮流攻击对方。但是,每一轮先攻击的兵为生命值较少的那个。如果两个兵的生命值相同,则按两个兵的名字的字典顺序,字典顺序在前的先攻击。(提示:可以用strcmp函数来进行字典顺序比较)。如果攻击1000次以后双方仍然活着,则比赛结果为draw 请你模拟三个种族间的单挑结果。

输入

有多组输入,每组输入用空行分隔开。每组输入由三行构成,每行开头为这个兵的名字s(名字只由字母组成,不含空格),接着是三个整数:a, b, c (0<a<1000, 0<=b<=1000, 0<=c<=1000) ,分别代表它生命值,攻击力,防御力。输入以EOF结束。

输出

先输出当前是第几组数据(参见sample,注意大小写必须完全一样)。接着按顺序输出每两个种族间的单挑结果。格式如下,具体可以参看sample s1 vs s2 win/lose/draw s1 vs s3 win/lose/draw s2 vs s3 win/lose/draw

样例输入

dragon 100 20 0<br/>dog 20 50 0<br/>soldier 50 5 0<br/><br/>soldier 50 5 0<br/>dragon 100 20 0<br/>dog 20 50 0<br/><br/>dog 827 281 145<br/>dragon 995 491 961<br/>soldier 436 827 942

样例输出

Case 1:<br/>dragon vs dog win<br/>dragon vs soldier win<br/>dog vs soldier win<br/>Case 2:<br/>soldier vs dragon lose<br/>soldier vs dog lose<br/>dragon vs dog win<br/>Case 3:<br/>dog vs dragon lose<br/>dog vs soldier lose<br/>dragon vs soldier draw<br/><br/>

来源

[提交][状态]