题目限制

时间限制 内存限制 评测方式 题目来源
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. 基于redis(订阅发布)实现python和java进程间通信

    主要结构为: python进程发布消息,java进程订阅消息. 依赖环境: python:   pip install redis java:  jedis 1. python端: PubSub.py ...

  2. 探索form组件和cookie,session组件

    一. 实现注册功能 后端代码: from django.shortcuts import render,HttpResponse,redirect from app01 import models C ...

  3. Python 踩坑之旅文件系统篇其一文件夹也是个文件

    目录 1.1 案例 1.2 分析 1.3 扩展 1.4 技术关键字 下期预告 代码示例支持 平台: Mac OS Python: 2.7.10 代码示例: - wx: 菜单 - Python踩坑指南代 ...

  4. Linux遇到的问题-记录

    Linux遇到的问题 2019-04-09以前: Linux&Win双系统下时间显示不正常的问题 一般安装了双系统(Linux+Windows)就很容易出现问题,Windows是直接取硬件时间 ...

  5. 小程序开发初体验,从静态demo到接入Bmob数据库完全实现

    之前我胖汾公司年会.问我能不能帮忙搞个小程序方便他们进行游戏后的惩罚/抽奖使用.出了个简单的设计图.大概三天左右做了个简单的小程序.目前提交审核了.对于写过一小段时间vue来说小程序很容易上手.写法和 ...

  6. 记一次jmeter从txt文本获取数值并给测试计划的变量赋值,jmeter永久性修改变量。

    前言: 需要永久性的改变变量. 其实这个办法并不是最好的,但是是最容易实现的.后期可做成从数据库里直接取值. 赋值BeanShell import java.io.File; import java. ...

  7. samba + OPENldap 搭建文件共享服务器

    samba + OPENldap 搭建文件共享服务器 这里我使用的是 samba(文件共享服务) v4.9.1 + OPENldap(后端数据库软件) v2.4.44 + smbldap-tools( ...

  8. Git项目分支分配

    主要分支包含master分支与develop分支,临时分支可以分为: release: 从develop分出 ,是最终要发布的版本. feature: 实现某功能时推荐新建分支,从develop分出. ...

  9. Hyperion: Building the Largest In memory Search Tree

    Introduction 索引在数据管理中起到很重要的作用,很多索引结构都会采用访问速度快而且内存消耗少的trie树,但一般常见的trie树索引结构都强调效率而忽视内存的效率,他们的效率虽然高,但内存 ...

  10. .Net Core 商城微服务项目系列(十二):使用k8s部署商城服务

    一.简介 本篇我们将会把商城的服务部署到k8s中,同时变化的还有以下两个地方: 1.不再使用Consul做服务的注册和发现,转而使用k8s-dns来实现. 2.不再使用Ocelot作为业务网关,使用T ...