BZOJ 3875 Ahoi2014 骑士游戏
3875: [Ahoi2014]骑士游戏
Time Limit: 30 Sec Memory Limit: 256 MB
Description
Input
Output
输出一行一个整数,表示最少需要的体力值。
Sample Input
4 27 3 2 3 2
3 5 1 2
1 13 2 4 2
5 6 1 2
Sample Output
HINT
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <cstring>
#include <queue>
#include <complex>
#include <stack>
#define LL long long int
#define dob double
using namespace std;const int N = 200010;
const int M = 1000010;
struct Node{int to,next;}E[M];
int head[N],tot,n,In[N],R[N];
LL S[N],f[N],K[N];
vector<int>G[N];int gi()
{int x=0,res=1;char ch=getchar();while(ch>'9'||ch<'0'){if(ch=='-')res*=-1;ch=getchar();}while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar();return x*res;
}LL gL()
{LL x=0,res=1;char ch=getchar();while(ch>'9'||ch<'0'){if(ch=='-')res*=-1;ch=getchar();}while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar();return x*res;
}inline void link(int u,int v){E[++tot]=(Node){v,head[u]};head[u]=tot;
}inline void SPFA()
{queue<int>Q;for(int i=1;i<=n;++i)Q.push(In[i]=i);while(!Q.empty()){int x=Q.front();Q.pop();In[x]=0;LL sum=S[x];for(int i=0;i<R[x];++i)sum+=f[G[x][i]];if(sum>=f[x])continue;f[x]=sum;for(int e=head[x];e;e=E[e].next)if(!In[E[e].to])Q.push(E[e].to),In[E[e].to]=1;}
}int main()
{n=gi();for(int i=1;i<=n;++i){S[i]=gL();K[i]=gL();R[i]=gi();for(int j=1;j<=R[i];++j){int r=gi();link(r,i);G[i].push_back(r);}f[i]=K[i];}SPFA();printf("%lld\n",f[1]);return 0;
}
转载于:https://www.cnblogs.com/fenghaoran/p/7208571.html
BZOJ 3875 Ahoi2014 骑士游戏相关推荐
- BZOJ 3875 Ahoi2014 骑士游戏 SPFA
题目大意:给定n个怪物,每个怪物可以用魔法直接干掉,或者用物理攻击使其分裂为一些其他怪物,求杀掉1号怪物的最小花销 令f[i]为杀死i号怪物的最小花销,则f[i]=min(k[i],s[i]+Σf[j ...
- 3875: [Ahoi2014]骑士游戏
3875: [Ahoi2014]骑士游戏 Time Limit: 30 Sec Memory Limit: 256 MB Submit: 599 Solved: 319 [Submit][Stat ...
- BZOJ 3875: [Ahoi2014Jsoi2014]骑士游戏 dp spfa
3875: [Ahoi2014&Jsoi2014]骑士游戏 Time Limit: 30 Sec Memory Limit: 256 MB Submit: 933 Solved: 475 ...
- bzoj 3875: [Ahoi2014Jsoi2014]骑士游戏【dp+spfa】
设f[i]为杀死i的最小代价,显然\( f[i]=min(k[i],s[i]+\sum f[to]) \) 但是这个东西有后效性,所以我们使用spfa来做,具体就是每更新一个f[i],就把能被它更新的 ...
- BZOJ3875: [Ahoi2014]骑士游戏
Description [故事背景] 长期的宅男生活中,JYY又挖掘出了一款RPG游戏.在这个游戏中JYY会 扮演一个英勇的骑士,用他手中的长剑去杀死入侵村庄的怪兽. [问题描述] 在这个游戏中,JY ...
- [AHOI2014]骑士游戏
[故事背景] 长期的宅男生活中,JYY又挖掘出了一款RPG游戏.在这个游戏中JYY会 扮演一个英勇的骑士,用他手中的长剑去杀死入侵村庄的怪兽. [问题描述] 在这个游戏中,JYY一共有两种攻击方式,一 ...
- Bzoj3875 [Ahoi2014]骑士游戏
Time Limit: 30 Sec Memory Limit: 256 MB Submit: 749 Solved: 392 Description [故事背景] 长期的宅男生活中,JYY又挖掘 ...
- 【BZOJ3875】【Ahoi2014】骑士游戏 SPFA处理有后效性动规
Description [故事背景] 长期的宅男生活中,JYY又挖掘出了一款RPG游戏.在这个游戏中JYY会 扮演一个英勇的骑士,用他手中的长剑去杀死入侵村庄的怪兽. [问题描述] 在这个游戏中,JY ...
- 题解 洛谷 P4042 [AHOI2014/JSOI2014]骑士游戏
洛谷P4042[AHOI2014/JSOI2014]骑士游戏\color{#00F}{洛谷\ P4042\ [AHOI2014/JSOI2014]骑士游戏}洛谷 P4042 [AHOI2014/JSO ...
最新文章
- 排序算法汇总——转载自http://blog.csdn.net/zhanglong_daniel/article/details/52513058
- Spring源码剖析——Bean的配置与启动
- Qt5.15.2+VS2019安装小结
- MESSL(maven + extjs + spring portlet mvc + spring web flow + liferay )整合架构 1
- 上升沿_输入输出的上升沿和下降沿是怎么来的,一起看看
- 【Tool】sublime txt的使用
- python剑指offer替换空格_迷人的算法-剑指offer面试题5:替换空格
- php环境苹果搭建,mac下搭建php环境
- Flex4之元数据标签使用
- html之meta标签
- Android手机会中电脑病毒么,安卓手机中木马病毒怎么办
- win10计算机怎么计算根号,详细介绍win10系统自带的计算器的功能,经验告诉你该这样...
- Win32_Processor CPU 参数说明
- DWC的1000M的MAC自环和PHY自环测试寄存器修改方式
- HTML5 PDF 编辑,pdf.js的使用与改造
- 了解 TCP 系统调用序列
- .ignore插件自动忽略
- 全球与中国医疗BI软件市场深度研究分析报告
- python扫雷总结与体会_扫雷拓展训练心得体会
- 西部矿业(601168):整合湖北铅锌资源
热门文章
- TCP长连接,心跳机制介绍
- 天龙八部手游服务器维护公告,【已完成】安卓版本更新维护公告
- 厉害了,我的国百度云资源
- 使用Three.js实现炫酷的赛博朋克风格3D数字地球大屏
- 数据分析(1)——统计学中的各种分布
- 腾讯云轻量级服务器怎么搭建网站,腾讯云轻量应用服务器新手教程:快速搭建网站...
- occt 几何图形库入门01
- 儿童bml计算机在线,中国儿童超重、肥胖体重指数BMI分类标准(kg/m2)
- Android商城开发(一)——一次活动页需求引发的危机感
- MySQL数据库管理(五)日志管理、备份与恢复