趣味ACM题——圣骑士的斩杀
题目来源于山东省第七届ACM大学生程序设计竞赛(Execution of Paladin)
题目描述
鱼人是炉石里的一支强大种族,在探险者协会里,圣骑士有了一张新牌,叫亡者归来,效果是召唤本轮游戏中7个已死鱼人。如果死掉的不足7个,那么召唤的数量就会不足7。
鱼人有很多,下面的4个是:
寒光智者(Coldlight Oracle):3费,2攻,2血,战吼:双方玩家各抽2张牌。
鱼人领军(Murloc Warleader):3费,3攻,3血,其他鱼人获得+2/+1。
蓝腮战士(Bluegill Warrior):2费,2攻,3血,冲锋。
老瞎眼(Old Murk-Eye):4费,2攻,3血,冲锋。战场上每有1个其他鱼人就会使其获得+1攻击。
说明:
法力:召唤随从的消耗。技能效果召唤的随从不消耗额外法力,只会消耗卡牌本身法力,双方玩家最多有10点法力。
攻击:随从每次能造成的伤害。
战吼:拥有战吼效果的随从,在从手牌里打出时会触发这个效果。被技能召唤的随从不会触发战吼。
冲锋:本来,在召唤出来的这一轮,随从是无法攻击的,但是有冲锋就可以。在召唤回合可以直接攻击。
战场:战场(游戏盘),游戏各种内容发生的地方,每场游戏都发生在棋盘上。
+2/+1:+2攻击和+1血量。
现在,轮到你出牌了,你有10点法力,只剩一张亡者归来。战场上没有任何随从,意味着你的随从可以直接攻击对手英雄。你还记得你出过的鱼人,也知道对手英雄的血量,那你能够用手上唯一这张牌赢得胜利吗?
输入
多组测试方案,第1行包括 integer T(7<=22000);表示测试数量。
每个测试的第1行都包括2个integer,n(已死的鱼人,0<=n<=7),h(英雄血量,0<h<=30)
后续N行里,每行都包括string,表示已死鱼人名称,String只能为:“寒光智者”,“鱼人领军”,“蓝腮战士”,“老瞎眼”。
输出
列出所有方案后,如果能赢得游戏,那就输出"Mrghllghghllghg!"(没有引号),否则输出“Tell you a joke, the execution of Paladin.”使用随从攻击敌人英雄,使其血量少于等于0即可胜利。
样例
提示
第1个方案里,鱼人都无法攻击。
第2个方案里,每个老瞎眼都有+2攻击,因为另外的一个老瞎眼和寒光智者,因此总伤害为8。
最后一个方案里,老瞎眼有12攻击(2点基础攻击,6个其他随从;2个鱼人领军,2个蓝腮战士有6攻(2基础攻击,2个鱼人领军)因此总伤害是24)
思路
寒光智者:没用;
鱼人领军:给蓝腮战士和老瞎眼每只加2点攻击;
蓝腮战士:加2点攻击;
老瞎眼:加2点攻击,给除了自身其他所有的每只加一点攻击。
标准程序
1 #include<bits/stdc++.h> 2 using namespace std; 3 #define MAXN 100 4 int main() 5 { 6 int t; 7 cin>>t; 8 while(t--) 9 { 10 int i,num,hp,sum,n1,n2,n3,n; 11 sum=n1=n2=n3=n=0; 12 cin>>num>>hp; 13 char a[MAXN]; 14 cin.getline(a,MAXN); 15 for(i=0;i<num;i++) 16 { 17 char a[MAXN]; 18 cin.getline(a,MAXN); 19 if(a[0]=='M') 20 n2=n2+2; 21 else if(a[0]=='B') 22 { 23 n1=n1+2; 24 ++n; 25 } 26 else if(a[0]=='O') 27 { 28 n1=n1+2; 29 ++n3; 30 ++n; 31 } 32 } 33 sum=n2*n+n1+n3*(num-1); 34 if(sum>=hp) 35 cout<<"Mrghllghghllghg!"<<endl; 36 else 37 cout<<"Tell you a joke, the execution of Paladin."<<endl; 38 } 39 return 0; 40 }
转载于:https://www.cnblogs.com/DestinHistoire/p/10256916.html
趣味ACM题——圣骑士的斩杀相关推荐
- ACM题集以及各种总结大全(转)
ACM题集以及各种总结大全! 虽然退役了,但是整理一下,供小弟小妹们以后切题方便一些,但由于近来考试太多,顾退役总结延迟一段时间再写!先写一下各种分类和题集,欢迎各位大牛路过指正. 一.ACM入门 关 ...
- 【训练计划】ACM题集以及各种总结大全
ACM题集以及各种总结大全! 虽然退役了,但是整理一下,供小弟小妹们以后切题方便一些,但由于近来考试太多,顾退役总结延迟一段时间再写!先写一下各种分类和题集,欢迎各位大牛路过指正. 一.ACM入门 关 ...
- ACM题集以及各种总结大全
ACM题集以及各种总结大全! 虽然退役了,但是整理一下,供小弟小妹们以后切题方便一些,但由于近来考试太多,顾退役总结延迟一段时间再写!先写一下各种分类和题集,欢迎各位大牛路过指正. 一.ACM入门 关 ...
- 1.计蒜客ACM题库.A1001 整除问题
计蒜客ACM题库.A1001 整除问题 判断一个数是否能被另一个整数整除是一个挺简单的问题,一般一个模运算就可以搞定了,懒惰的晓萌还是不想自己做,于是找到你帮他写代码,你就帮帮他吧. 输入格式 输入包 ...
- 5.计蒜客ACM题库.A2234 结果填空:青蛙爬井
计蒜客ACM题库.A2234 结果填空:青蛙爬井 有一口深度为 high 米的水井,井底有一只青蛙,它每天白天能够沿井壁向上爬 up 米,夜里则顺井壁向下滑 down 米. 若青蛙从某个早晨开始向外爬 ...
- 程序员面试趣味智力题
趣味智力题 虽然把这类题目归为一个大类,但他们本身之间却绝少相同之处.每个题目都需要你打破思维的常规来回答.稍有不慎,就可能落入圈套. 例题1:你让工人为你工作7天,给工人的回报是一根金条.金条平分成 ...
- c语言假设有21根火柴棍,10道火柴棍趣味智力题,据说全对的都是天才!
原标题:10道火柴棍趣味智力题,据说全对的都是天才! 各位小朋友及大朋友们,晚上好!欢迎来到科学有意思栏目.发现身边有趣的科学现象,激发孩子好奇心! 相信很多80后的朋友们,小时候一定和同学玩过各种趣 ...
- Python趣味百题-进阶篇-刘硕-专题视频课程
Python趣味百题-进阶篇-11679人已学习 课程介绍 精选的30个实例都从趣味编程的角度出发,并兼顾实用性.实例涵盖了Python程序设计的基础知识和常用算法,很多实例来自编程大 ...
- Python趣味百题-初级篇-刘硕-专题视频课程
Python趣味百题-初级篇-10167人已学习 课程介绍 精选的10个实例都从趣味编程的角度出发,并兼顾实用性.实例涵盖了Python程序设计的基础知识和常用算法,很多实例来自编程大 ...
- ACM题库以及培养策略
ACM大量习题题库 ACM大量习题题库 现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO ht ...
最新文章
- Udacity机器人软件工程师课程笔记(二十二) - 物体识别 - 色彩直方图,支持向量机SVM
- 我看过的Python方面的好文章
- UVA 122 Trees on the level 二叉树 广搜
- ibatis基础(三):查询指定id的单个对象
- 现代软件工程 作业 团队冲刺阶段的要求
- 这是我看过最好的Java编程入门视频教程!
- poj1063 解题报告(poj 1063 analysis report)
- Windows 7各服务项介绍
- linux定时任务启动
- jQuery使用ajax传输xml文档在IE中无法正确解析的问题
- CCNP-第十四篇-BGP综合实验
- LoadRunner参数包含逗号
- java输入年月判断当月天数_java输入月份,年份,显示对应月份的天数,
- while循环--登录
- Linux-完美解决linux系统镜像下载速度慢的问题
- Setup Factory打包winform程序
- 应用程序无法正常启动0xc0150002怎么解决
- 克孜勒苏柯尔克孜自治州谷歌高清卫星地图下载
- win10 家庭版安装 docker报requires windows 10 pro/enterprise (15063+) or windows 10 home (19018+)
- 消息中间件选型分析:从 Kafka 与 RabbitMQ 对比