题意分析

看了一下题解区的dalao都是线段树+DP,然而蒟蒻看不懂。
用最短路思想直接解决这道题。

把每个人的守卫时间转换为 a-1到 b。
由于最优解会有区间相交的情况,所以要将i 与 i-1 连接一条权值为0的边。
最后注意,题目中给了s和e,一开始我没注意,一直从0开始的,然后就凉了。

代码总览

#include<bits/stdc++.h>
using namespace std;
const int nmax = 100000+10;
typedef struct{int to,nxt,w;
}Edge;
Edge e[nmax<<1];
int tot = 0,n,s,ee;
int head[nmax<<1],cost[nmax];
void add(int u, int v, int w){e[tot].to = v;e[tot].nxt = head[u];e[tot].w = w;head[u] = tot++;
}
void spfa(){memset(cost, 0x3f3f3f3f,sizeof cost); cost[s] = 0;bitset<nmax> inque; inque.reset();queue<int> q; q.push(s);while(!q.empty()){int u = q.front(); q.pop(); inque.reset(u);for(int i = head[u];i!=-1;i=e[i].nxt){int v = e[i].to, w = e[i].w;if(cost[v] > cost[u] + w){cost[v] = cost[u] + w;if(!inque.test(v)){q.push(v);inque.set(v);}}}}
}
int main(){scanf("%d %d %d",&n,&s,&ee);memset(head,-1,sizeof head);int u,v,w;for(int i = 0;i<n;++i){scanf("%d %d %d",&u,&v,&w);add((u-1)<=s?s:(u-1),v<=ee?v:ee,w);}for(int i = 1;i<=ee;++i) add(i,i-1,0);spfa();printf("%d\n",cost[ee] == 0x3f3f3f3f?-1:cost[ee]);return 0;
}

Vijos1404 遭遇战 (SPFA)相关推荐

  1. [vijos1404] 遭遇战(spfa)

    背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC ...

  2. vijos1404 遭遇战(建图spfa)

    这回要自己建图了..首先为了能连上,我们把[1,3]这种区间改记成[1,4).在图上用一条1指向4的有向边代替,边权为cost.然后为了解决覆盖的问题,即[1,3],[2,5]这种也可以满足[1,5] ...

  3. Vijos1404遭遇战[最短路建模]

    背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC ...

  4. / Vijos / 题库 / 1404 遭遇战 spfa 建图

    背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC ...

  5. vijos 1404 遭遇战[spfa]

    传送门:https://vijos.org/p/1404 Analyse:题目给一些区间,要求是找some区间,使得所选区间并集包含题目[s,e],且权值和最小. *加上 (i)->(i-1) ...

  6. vijos1404 遭遇战

    题意: 给你一条数轴和m条线段,第i条线段覆盖区间[Li,Ri],选择它需要代价Ci.请选出代价和最小的一组线段使得区间[L,R]中的每一段都被覆盖. 这个题目其实是数据结构优化DP的一道例题.. 但 ...

  7. 【Vijos1404】遭遇战(最短路)

    [Vijos1404]遭遇战(最短路) 题面 Vijos 题解 显然可以树状数组之类的东西维护一下\(dp\).这里考虑一种最短路的做法. 首先对于一个区间\([l,r]\),显然可以连边\((l,r ...

  8. 【SPFA】遭遇战 VijosP1404

    [问题描述] 背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务 ...

  9. vijos1404:遭遇战

    背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC ...

最新文章

  1. 刀塔传奇服务器维护,刀塔传奇360专服合服维护补偿公告
  2. MongoDB入门及 c# .netcore客户端MongoDB.Driver2.9.1使用
  3. PowerDesigner的逆向工程.
  4. 摆放家具-完成添加家具方法
  5. 限制RICHTEXTBOX的输入的范围
  6. 报表在IBM AIX系统下resin部署
  7. python中ttk和tkinter_python tkinter中ttk组件如何使用?
  8. c语言数组左下角便*,数据结构 - 数组
  9. abaqus推荐用哪一版本的_微信拍一拍怎么用? 微信拍一拍功能在哪怎么拍别人...
  10. linux思科认证,思科CCIE认证知识点之IPv6地址
  11. [论文摘录] Web Service QoS的几个研究方向
  12. Ubuntu学习日记--Lesson9:显卡工作状态查看命令
  13. map.setTerrain is not a function
  14. php fpm 报错,PHP-FPM安装报错解决
  15. jndi weblogic mysql_WebLogic使用总结(三)——WebLogic配置JNDI数据源
  16. python web ui框架_推荐几个精致的web UI框架
  17. 苹果产品信息查询_不知道的细节 苹果官网
  18. 让荣之学告诉你Shopee选品思路及运营方法!
  19. QT的安装------QT
  20. 用计算机绘画教学反思,《电脑美术》教学反思范文

热门文章

  1. KOEI三国志 历代赵云头像
  2. 湖北省加快推进云计算标准化促大数据产业发展
  3. 用H5技术做推广和宣传,具有哪些优势呢?
  4. 浅析给水管网动态水力建模数据及其管理
  5. 2019最新小白玩转投资理财入门+进阶教程 助你提升投资理财技能
  6. 背单词App开发日记5(上)
  7. 微信小程序之获取后台动态数据表格布局display:table
  8. ubuntu查看OpenGL版本
  9. PCL1.12.1无效的宏定义BOOST_DEFINITIONS -DBOOST_ALL_NO_LIB
  10. 库克:iPad无可争议是全球最佳平板