题目限制

时间限制 内存限制 评测方式 题目来源
1000ms 131072KiB 标准比较器 Local

题目描述

他们飘呀飘,飘呀飘,飘呀飘,飘呀飘~~~
经过七七八十一天的漂泊,残雪、夏夜和水手2011,终于到达了无尽的深渊--lcyz岛,正当他们准备从后门登陆时,突然半路杀出了一个程咬金--一个身高十二尺,腰围380的怪物。这正是传说中lcyz岛上的上古怪物,通道守护者,但是我们都叫他门卫。根据上古传说,只有拿到岛上的上古兵器毛剑,才可打败门卫。有了毛剑,神马都是浮云、、、
毛剑被珍藏在一个灰常隐秘的地下室里,残雪经过重重险阻,终于进入了剑冢,此时毛剑静静地插在一块由纯金打造的纯金上。残雪看见此景,不由感叹一声,好剑啊。又大喊一声:看我剑人合一。说罢,便伸手欲抽剑,但是,一个迷宫瞬间弹了出来(别问我怎么弹出来的-。-),这个迷宫情况如下:
迷宫中有n块区域,其中m条道路,如果从a区域到b区域存在一条道路的话,残雪要想通过这条道路,需要耗费一定的体力值,但是,某些道路上摆放着食物,残雪经过这些道路,可以补充一定的体力值,可以理解为权值为负的道路,现在残雪还要留着体力去打败门岗,需要用最小的体力值拿到毛剑,现在就请你帮助他们取出毛剑。残雪所处的位置在1区域,毛剑所处的位置在n区域。

输入格式

第一行:一个n,表示区域数目。
第二行:m,表示存在m条道路。
以下m行:
每行三个数:x、y、z
区域x、y的标号和他们之间耗费的体力值z

输出格式

从残雪到毛剑所耗费的最小体力(结果为负则为补充体力)。

提示

对于30%的数据,有n<=1000,m<=2000
对于50%的数据,有n<=5000,m<=10000;
对于100%的数据,有n<=10000,m<=50000;
保证此题所涉及的所有数据都是整数。

样例数据

输入样例 #1 输出样例 #1
3
3
1 2 5
2 3 10
1 3 20
15

提交地址joyoi1326


题解 :

这么裸的spfa很少见了;


Code:

 #include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
using namespace std; int n, m;
struct edge
{
int nxt, to, val;
}ed[];
int head[], cnt;
inline void add(int x, int y, int z){ed[++cnt] = (edge){head[x],y,z};head[x]=cnt;}
int dis[];
bool ex[]; inline void SPFA()
{
memset(dis, 0x7f, sizeof dis);
queue <int> q;
q.push();
ex[] = ;
dis[] = ;
while (!q.empty())
{
int t = q.front();
q.pop();
ex[t] = ;
for (register int i = head[t] ; i ; i = ed[i].nxt)
{
int to = ed[i].to;
if (dis[to] > dis[t] + ed[i].val)
{
dis[to] = dis[t] + ed[i].val;
if (!ex[to])
{
ex[to] = ;
q.push(to);
}
}
}
}
} int main()
{
cin >> n >> m;
for (register int i = ; i <= m ; i ++)
{
int x, y, z;
scanf("%d%d%d", &x, &y, &z);
add(x, y, z);
// add(y, x, z);
}
SPFA();
cout << dis[n] << endl;
return ;
}

[JOYOI1326] 剑人合一的更多相关文章

  1. 用LSTM生成武侠人名

    http://magicly.me/2017/04/07/rnn-lstm-generate-name/?utm_source=tuicool&utm_medium=referral 之前翻译 ...

  2. <股市高手和你想的不一样>读书笔记

    书在这里 在股市中挖掘真正有成长潜力的好企业,是成功投资者的关键 股票被低估的时候,才值得买 我们买股票,就是买这家公司的未来 公司的成长性要重点看两个方面,一个方面要看该公司近三年的成长趋势,另外一 ...

  3. 从《三体》到“中美科技战”,3分钟理解“网络”D丝为什么要迎娶“算力”白富美

    摘要:在多维的世界里,高维的文明对于低维文明具有碾压的优势,而网络也正在从二维走向三维!网络硬件的竞争主要是“芯片+算法”. 从三体到中美科技战,理解网络与算力深度融合助力高维度竞争 1:对抗封锁,需 ...

  4. 【逆向&编程实战】Metasploit中的安卓载荷凭什么吊打SpyNote成为安卓端最强远控

    文章作者:MG1937 QQ:3496925334 CNBLOG:ALDYS4 未经许可,禁止转载 前言 说起SpyNote大家自然不陌生,这款恶意远控软件被利用在各种攻击场景中 甚至是最近也捕获到了 ...

  5. [Code] 变态之人键合一

    目的也比较单纯,选一门语言,走向人键合一. 选了两本书作为操练场:<精通Python设计模式>.<Data Structure and Algorithm in Python> ...

  6. 剑指offer笔记面试题13----机器人的运动范围

    题目:地上有一个m行n列的方格.一个机器人从坐标(0, 0)的格子开始移动,它每次可以向左.右.上.下移动一格,但不能进入行坐标和列坐标的数位之和大于k的格子.例如,当k为18时,机器人能够进入方格( ...

  7. 剑指offer系列40----机器人的运动范围

    package com.exe8.offer; /** *[题目]地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动, * 每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标 ...

  8. 剑指offer-机器人的运动范围

    题目描述 地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子. 例如,当k为18时,机器人能 ...

  9. 剑指offer-面试题13-机器人的运动范围-递归法

    /* 题目: 地上有一个m行n列的方格.一个机器人从坐标(0,0)的格子开始运动, 每次可向上.下.左.右移动一格,但不能进入行坐标和列坐标之和大于k的格子. 如,当k=18时,机器人能进入(35,3 ...

随机推荐

  1. VMware Ubuntu 19最新安装详细过程

    ubuntu可以说是目前最流行的Linux改造版了(如果安卓不算的话),现在的很多服务器都是linux系统的,而自己属于那种前端也搞,后台也搞,对框架搭建也感兴趣,但是很多生产上的框架和工具都是安装在 ...

  2. 01 (OC)* @property 后面可以有哪些修饰符?

    一:@property 后面可以有哪些修饰符? 1:线程安全的: atomic,nonatomic 2:访问权限的 readonly,readwrite 3:内存管理(ARC) assign, cop ...

  3. 《Java核心技术卷1》读书笔记

    一.基础 数据类型 Java是一种强类型语言,一共8种基本类型,没有无符号类型 整型:int(正负20亿).short(正负3万).long(巨多).byte(正负127) 浮点类型:float(正负 ...

  4. JavaScript DOM 编程艺术

    最近把JavaScript DOM 编程艺术这本书看完了,觉得这本书很好 深入浅出地展示了渐进增强.平稳退化.结构和样式分离等编程思想,我对书中重要的知识进行了梳理总结. 一.网页 二.JavaScr ...

  5. LoadRunner11.安装破解

    Loadrunner安装及破解   一. 安装 1. 将ISO文件导入,打开光驱,运行“setup.exe” 2. 点击安装,部分机器会提示缺少“Microsoft Visual C++ 2005 S ...

  6. select2 分组后的选项无法被选中

    在使用select2组件的过程中发现分组下的选项无法选中,与分组在同一级的选项可以被选中! 1.所用select2版本select2-4.0.32 2.HTML代码: <input id=&qu ...

  7. linux初学者小记(二)

    文件管理 1.文件系统结构元素 文件和目录被组织成一个单根倒置树结构文件系统从根目录下开始,用"/"表示. 1.1文件系统 # 根文件系统(rootfs):root filesys ...

  8. java 队列和栈及示例

    一.栈的实现: 1.Stack实现 接口实现: class Stack<E> extends Vector<E> {......} 常用的api函数如下: boolean is ...

  9. druid 连接池的配置参数

    介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生 ...

  10. 【SQL server初级】数据库性能优化一:数据库自身优化(大数据量)

    数据库优化包含以下三部分,数据库自身的优化,数据库表优化,程序操作优化.此文为第一部分 数据库性能优化一:数据库自身优化 优化①:增加次数据文件,设置文件自动增长(粗略数据分区) 1.1:增加次数据文 ...