hihocoder 1115 诺滋多姆

2023-11-09 22:49
文章标签 hihocoder 1115 诺滋 多姆

本文主要是介绍hihocoder 1115 诺滋多姆,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://hihocoder.com/problemset/problem/1115
思路来源:http://blog.csdn.net/zhousilijames/article/details/49620019
看到炉石就打了。。。
爆搜题dfs(int noc,int face,int step,bool D)
noc表示打到诺滋多姆上的伤害,face表示打到脸上的伤害,step表示第几个随从,D表示诺滋多姆还有没有圣盾。
枚举一下先攻击的随从,然后就是舒爽的深搜了。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
struct node{int att,hp;bool d,w;
}a[10];
int ans,n,num[10];
void dfs(int noc,int face,int step,bool D)
{if(step>n){if(noc>=8)ans=max(ans,face);return ;}int i=num[step];if(D==true){if(a[i].w==true){if(a[i].d||a[i].hp>8){dfs(noc+a[i].att,face,step+1,false);dfs(noc,face+a[i].att,step+1,false);}}dfs(noc,face,step+1,false);}else{if(a[i].w==true){dfs(noc,face+a[i].att*2,step+1,false);if(a[i].d||a[i].hp>8){dfs(noc+a[i].att,face+a[i].att,step+1,false);dfs(noc+a[i].att*2,face,step+1,false);}       }dfs(noc+a[i].att,face,step+1,false);dfs(noc,face+a[i].att,step+1,false);}
}
int main()
{while(scanf("%d",&n)!=EOF){char c;ans=0;for(int i=1;i<=n;i++){scanf("%d%d",&a[i].att,&a[i].hp);a[i].d=a[i].w=false;while(scanf("%c",&c)!=EOF){if(c=='\n')break;if(c=='D')a[i].d=true;if(c=='W')a[i].w=true;}}for(int i=1;i<=n;i++)num[i]=i;for(int i=1;i<=n;i++){swap(num[i],num[1]);dfs(0,0,1,true);}printf("%d\n",ans);}return 0;
}

这篇关于hihocoder 1115 诺滋多姆的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/378916

相关文章

#1121 : 二分图一•二分图判定 (HIHOCoder +二分图的判定)

#1121 : 二分图一•二分图判定 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 大家好,我是小Hi和小Ho的小伙伴Nettle,从这个星期开始由我来完成我们的Weekly。 新年回家,又到了一年一度大龄剩男剩女的相亲时间。Nettle去姑姑家玩的时候看到了一张姑姑写的相亲情况表,上面都是姑姑介绍相亲的剩男剩女们。每行有2个名

hihoCoder #1174:拓扑排序·一

【题目链接】:click here~~ 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 由于今天上课的老师讲的特别无聊,小Hi和小Ho偷偷地聊了起来。 小Ho:小Hi,你这学期有选什么课么? 小Hi:挺多的,比如XXX1,XXX2还有XXX3。本来想选YYY2的,但是好像没有先选过YYY1,不能选YYY2。 小Ho:先修课程真是个麻烦的东西

【hihocoder #1506 : 投掷硬币】递推

【链接】:hihocoder #1506 : 投掷硬币 【题目】: 1506 : 投掷硬币 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi有一枚神奇的硬币。已知第i次投掷这枚硬币时,正面向上的概率是Pi。 现在小Hi想知道如果总共投掷N次,其中恰好M次正面向上的概率是多少。 输入 第一行包含两个整数N和M。 第二行包含N个实数P1, P

HihoCoder上网络流算法题目建模总结

经过了几天的学习和做题,我利用刘汝佳书上的网络流算法模板完成了HihoCoder上的几个网络流算法,HihoCoder可能还会继续更新网络流算法,所以我也会接着总结。 这个主要是对网络流算法的建模做分析和理解,不具体分析网络流算法,网络流算法会单独总结。 网络流一·Ford-Fulkerson算法 题目连接 本题没有建模,就是标准的网络最大流求解,将图建完后直接应用最大流算法即可解决。但在

hihocoder--数字三角形

问题描述 小Hi和小Ho在经历了螃蟹先生的任务之后被奖励了一次出国旅游的机会,于是他们来到了大洋彼岸的美国。美国人民的生活非常有意思,经常会有形形色色、奇奇怪怪的活动举办,这不,小Hi和小Ho刚刚下飞机,就赶上了当地的迷宫节活动。迷宫节里展览出来的迷宫都特别的有意思,但是小Ho却相中了一个其实并不怎么像迷宫的迷宫——因为这个迷宫的奖励非常丰富~ 于是小Ho找到了小Hi,让小Hi帮助他获取尽可能

2024.6.20总结1115

今天论文拿给老师签字了,老师也给我指出了相应的问题,搞了一个早上+下午,晚上的时候,拿论文去装订,并且跑了3公里,最后,看了《令人心动的offer3》。 感触:今日有两大感触,一个是关于如何做好一件事的问题,哪怕是一件小事(比如毕业论文这块),想要做好,想要高效做好,也不是一件容易的事情。从做毕设,到写论文,修改论文,做答辩ppt,毕业答辩,修改装订等环节,从整个环节可以知道,这就是一个大工程。

hihoCoder hiho一下 第五十一周 欧拉路·三

题目1 : 欧拉路·三 时间限制: 10000ms 单点时限: 1000ms 内存限制: 256MB 描述 小Hi和小Ho破解了一道又一道难题,终于来到了最后一关。只要打开眼前的宝箱就可以通关这个游戏了。 宝箱被一种奇怪的机关锁住: 这个机关是一个圆环,一共有2^N个区域,每个区域都可以改变颜色,在黑白两种颜色之间切换。 小Ho控制主角在周围探索了一下,果然

hihocoder #1175 : 拓扑排序·二

#1175 : 拓扑排序·二 时间限制: 10000ms 单点时限: 1000ms 内存限制: 256MB 描述 小Hi和小Ho所在学校的校园网被黑客入侵并投放了病毒。这事在校内BBS上立刻引起了大家的讨论,当然小Hi和小Ho也参与到了其中。从大家各自了解的情况中,小Hi和小Ho整理得到了以下的信息: 校园网主干是由N个节点(编号1..N)组成,这些节点之间有一些

hihocoder 1364 : 奖券兑换(多重背包)

#1364 : 奖券兑换 时间限制: 20000ms 单点时限: 1000ms 内存限制: 256MB 描述 小Hi在游乐园中获得了M张奖券,这些奖券可以用来兑换奖品。 可供兑换的奖品一共有N件。第i件奖品需要Wi张奖券才能兑换到,其价值是Pi。   小Hi使用不超过M张奖券所能兑换到的最大奖品总价值是多少? 输入 第一行两个整数N,M。   接下来N行,每行

hihocoder #1362 : 修补木桶(二分)

时间限制: 10000ms 单点时限: 1000ms 内存限制: 256MB 描述 一只木桶能盛多少水,并不取决于桶壁上最高的那块木板,而恰恰取决于桶壁上最短的那块。 已知一个木桶的桶壁由N块木板组成,第i块木板的长度为Ai。 现在小Hi有一个快捷修补工具,每次可以使用修补工具将连续的不超过L块木板提高至任意高度。 已知修补工具一共可以使用M次(M*L<N),如何修补才