P1613 跑路

题目大意:

小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零。可是小A偏偏又有赖床的坏毛病。于是为了保住自己的工资,小A买了一个十分牛B的空间跑路器,每秒钟可以跑2^k千米(k是任意自然数)。当然,这个机器是用longint存的,所以总跑路长度不能超过maxlongint千米。小A的家到公司的路可以看做一个有向图,小A家为点1,公司为点n,每条边长度均为一千米。小A想每天能醒地尽量晚,所以让你帮他算算,他最少需要几秒才能到公司。数据保证1到n至少有一条路径。

倍增+Floyd处理

首先不能直接跑最短路,因为跑路机的存在,可以想到倍增,每次向上跳最大可能步数,但就样例来说,1~n的树上路径是3,无法考虑到包含自环的点

设$p[i][j][k]$为$i$到$j$路径长度为$2^k$的路径是否存在,倍增就好了,然后Floyd求最短路。

#include<bits/stdc++.h>#define N 101010
using namespace std;int d[105][105],n,m;
bool p[105][105][105];int main()
{scanf("%d%d",&n,&m);memset(d,0x3f,sizeof(d));for(int u,v,i=1;i<=m;i++){scanf("%d%d",&u,&v);d[u][v]=1;p[u][v][0]=true;}for(int k=1;k<=100;k++){for(int f=1;f<=n;f++)for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(p[i][f][k-1]&&p[f][j][k-1])p[i][j][k]=true,d[i][j]=1;}}}for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){d[i][j]=min(d[i][k]+d[k][j],d[i][j]);}}}printf("%d\n",d[1][n]);return 0;
}

转载于:https://www.cnblogs.com/song-/p/9629066.html

洛谷——P1613 跑路相关推荐

  1. 【Luogu】P1613 跑路

    [Luogu]P1613 跑路 一.题目 题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资 ...

  2. 洛谷P1589 泥泞路

    洛谷P1589 泥泞路 题目描述 暴雨过后,FJ的农场到镇上的公路上有一些泥泞路,他有若干块长度为L的木板可以铺在这些泥泞路上,问他至少需要多少块木板,才能把所有的泥泞路覆盖住. 输入输出格式 输入格 ...

  3. 洛谷P1613 跑路

    题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资,小A买了一个十分牛B的空间跑路器,每秒钟 ...

  4. [Dijstra] 洛谷 P2939 改造路

    题意翻译 约翰一共有N)个牧场.由M条布满尘埃的小径连接.小径可 以双向通行.每天早上约翰从牧场1出发到牧场N去给奶牛检查身体. 通过每条小径都需要消耗一定的时间.约翰打算升级其中K条小径,使之成为高 ...

  5. 洛谷 P1589 泥泞路 2019青岛市竞赛(贪心)

    题目链接 https://www.luogu.org/problemnew/show/P1589 解题思路 用结构体存下每一段泥泞路的左端点和右端点,然后用sort根据左端点排序,采用贪心的思想,从左 ...

  6. 洛谷P1807 最长路_NOI导刊2010提高(07) 求有向无环图的 最长路 图论

    洛谷P1807 最长路_NOI导刊2010提高(07) 图论 求有向无环图的 最长路 首先阐明一点 最长路dijkstra 是不能做 (当然我是不会做的,不过我貌似看到过网上的dalao有用dijst ...

  7. 洛谷 P2939 [USACO09FEB]改造路Revamping Trails

    洛谷 P2939 [USACO09FEB]改造路Revamping Trails Description 约翰一共有N)个牧场.由M条布满尘埃的小径连接.小径可 以双向通行.每天早上约翰从牧场1出发到 ...

  8. 图论——最长路(洛谷 P1807)

    题目选自洛谷P1807 对于一个有向无环图,可以采取广搜将结点依次搜索,记录当前结点的最长路并在循环过程中不断更新. 题目描述 设 G 为有 n 个顶点的带权有向无环图,G 中各顶点的编号为 1 到  ...

  9. 【菜鸟进阶之路】 P4924 [1007]魔法少女小Scarlet - 洛谷

    一.题目部分 选自洛谷: P4924 [1007]魔法少女小Scarlet 二.解题过程 思路 见"提交AC答案"部分给出的注释 提交AC答案 #include<bits/s ...

最新文章

  1. python错误和异常处理怎处理你知道么
  2. CA ARCserve Backup系列(3)—安装代理(Linux篇)
  3. Python_logging模块
  4. explain 之 table || explain 之 type
  5. java中封装日期加时间_java日期处理简单封装
  6. 在iptables防火墙下开启vsftpd的端口
  7. (1)编译安装lamp三部曲之apache-技术流ken
  8. CruiseControl中应用NCover和NCoverExplore
  9. oracle fiscal year,Version 0 is not defined for fiscal year 2007.
  10. 多个命令执行结果输出到同一个文件(批处理)
  11. 37.Linux/Unix 系统编程手册(下) -- DAEMON
  12. 利用google工具进行关键词研究
  13. android长度测量工具,手机测量长度软件
  14. ps裁剪和裁切的区别_ps裁剪工具怎么用?调整图像与画布的尺寸(三)
  15. 国内研发!适用于安卓应用程序的 Word文档功能开发组件来啦!
  16. web页面中实现局部页面的刷新
  17. 下面不是计算机网络面临的主要威胁是,网络安全复习题2
  18. c语言罗马数字换成整数,leetcode 13 罗马数字转整数 C语言
  19. 51单片机智能远程遥控温控PWM电风扇系统红外遥控温度速度定时关机
  20. pfn_to_page

热门文章

  1. openwrt折腾记1-DDNS动态域名更新与WIFI定时开关脚本
  2. html制作文字效果,使用background-clip属性制作文字特效
  3. 【前端系列教程之JavaScript】01_JavaScript概述和引入方式
  4. 【大学】北理工的恶龙
  5. 3D主动立体播放器开发
  6. Android Q 限制后台启动Activity
  7. 如何选择,没有方向,下面来看看马云说未来五年最赚钱的行业。
  8. 如何使用AI帮你制作PPT
  9. https证书产品价格为什么高低不一
  10. win10的WLS环境搭建记录