题目大意

给一个无向图(点数1<=n<=100000 ),求从起点到那一个点的最短路最长,并输出路径长度。

分析

就是一个赤裸裸的spfa吗!

代码

constmaxe=100000;maxv=2000000;typearr=recordx,y,w,next:longint;end;varn,m,s,q:longint;ls:array[1..maxe] of longint;a:array[1..maxv] of arr;f:array[1..maxe] of longint;v:array[1..maxe] of longint;d:array[1..maxe] of longint;i,j,k:longint;ans:longint;procedure spfa;
vari,j,k:longint;head,tail:longint;
beginfillchar(f,sizeof(f),$7f);head:=0;tail:=1;v[s]:=1;d[1]:=s;f[s]:=1;repeathead:=head mod maxe+1;j:=ls[d[head]];while j<>0 dobeginwith a[j] dobeginif f[x]+w<f[y]thenbeginf[y]:=f[x]+w;if v[y]=0thenbegintail:=tail mod maxe+1;d[tail]:=y;v[y]:=1;end;end;j:=next;end;end;v[d[head]]:=0;until head=tail;
end;beginassign(input,'spfa.in');assign(output,'spfa.out');rewrite(output);reset(input);readln(n,m,s);readln(q);fillchar(ls,sizeof(ls),0);for i:=1 to m dobeginwith a[i*2-1] dobeginreadln(x,y);w:=1;next:=ls[x];ls[x]:=i*2-1;end;a[i*2].x:=a[i*2-1].y;a[i*2].y:=a[i*2-1].x;a[i*2].w:=1;a[i*2].next:=ls[a[i*2].x];ls[a[i*2].x]:=i*2;end;spfa;ans:=0;for i:=1 to n doif f[i]>ans then ans:=f[i];write(ans+q);close(input);close(output);
end.

转载于:https://www.cnblogs.com/a-loud-name/p/6184838.html

ssl2339 分糖果 spfa相关推荐

  1. 信息学奥赛一本通 1380:分糖果(candy)

    [题目链接] ybt 1380:分糖果(candy) 可以认为小朋友间关系的最大数量为 1 0 5 10^5 105 [题目考点] 1. 图论:广搜 2. 图论:最短路径 [解题思路] 每个小朋友是一 ...

  2. 【图论】C059_AW_GF和猫咪的玩具 分糖果(floyd求最短路中的最长路 | 最后一个小朋友吃完的时间)

    一.GF和猫咪的玩具 GF同学和猫咪得到了一个特别的玩具,这个玩具由n个金属环(编号为1-n),和m条绳索组成,每条绳索连接两个不同的金属环,并且长度相同. GF左手拿起金属环L,猫咪右手(或者说:爪 ...

  3. LeetCode简单题之分糖果 II

    题目 排排坐,分糖果. 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友. 给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最后一个小 ...

  4. 贪心算法简单实践 -- 分糖果、钱币找零、最多区间覆盖、哈夫曼编解码

    1. 贪心算法概览 贪心算法是一种算法思想.希望能够满足限制的情况下将期望值最大化.比如:Huffman编码,Dijkstra单源最短路径问题,Kruskal最小生成树 等问题都希望满足限制的情况下用 ...

  5. 4702: 分糖果系列一

    4702: 分糖果系列一 Description Oliver分别有币值为1,3,5,7,9,13元的硬币a,b,c,d,e,f枚.一天她去大学生超市买糖吃,糖的价格为g元. 问:用Oliver仅有的 ...

  6. C语言 · 分糖果

    历届试题 分糖果   时间限制:1.0s   内存限制:256.0MB 问题描述 有n个小朋友围坐成一圈.老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边 ...

  7. 题目1550:分糖果

    题目描述: 给从左至右排好队的小朋友们分糖果, 要求: 1.每个小朋友都有一个得分,任意两个相邻的小朋友,得分较高的所得的糖果必须大于得分较低的,相等则不作要求. 2.每个小朋友至少获得一个糖果. 求 ...

  8. 蓝桥杯 历届试题 分糖果(模拟)

    传送门 题目描述 有n个小朋友围坐成一圈.老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子. 一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而 ...

  9. 【快乐水题】575. 分糖果

    原题: 力扣链接:575. 分糖果 题目简述: Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] .Alice 注意到她的体重正在增长,所以前去拜访了一位医生. 医生建议 ...

最新文章

  1. Google推荐的15条HTML 5代码军规----来看看你知道几个,我一个都不知道。。。
  2. 远程桌面Web连接访问及端口更改方法
  3. oracle大表如何快速删除一列,Oracle 对表中的记录进行大批量删除
  4. 【论文解读】何恺明团队最新力作SimSiam:消除表征学习“崩溃解”,探寻对比表达学习成功之根源...
  5. Lucene正则表达式查询RegenxQuery
  6. 突破边界局限,阿里云神龙负责人张献涛分享15年虚拟化之路
  7. SSM 整合 2:Java EE 开发环境的搭建(JDK 配置、Tomcat 安装、IDE 安装、IDE 集成 Tomcat、Spring 及其组件的下载)
  8. Online Judge汇总
  9. laravel 分页和共多少条 加参数的分页链接
  10. 指派问题程序c语言,指派问题lingo程序样例
  11. win10显示未安装任何音频输出设备问题解决
  12. ubuntu20.04 安装ROS2和ROS1共存
  13. 圣思园张龙-Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)
  14. 国庆车流激增,南京启用无人机报路况
  15. 第四回 还君明珠双泪垂,恨不相逢未嫁时
  16. 华为OD面经2022-8-9(持续更新)
  17. Unity3D教程:如何利用Shader实现钻石渲染效果
  18. 重载和重写的区别是什么
  19. 2018年财富中国500强:东方明珠蝉联登榜 领跑文化传媒业
  20. 工业4.0万物联网兴起 智能手机或将消亡

热门文章

  1. idea里maven设置本地仓库报错原因
  2. 当代计算机技术在建筑设备中的应用,智能化建筑中计算机技术应用研究原稿(样例3)...
  3. js生日计算年龄_用T-SQL计算明细年龄问题.
  4. python 调用event handler_python-如何获取调用事件的窗口小部件的ID(...
  5. tensorflow量化感知训练_tensorflow
  6. swoole必须和PHP使用吗,php有必要使用swoole吗
  7. 王者荣耀服务器响应超时,“团战”打游戏,为什么你的网络信号总是连接超时?...
  8. C++编程进阶3(如何写出正确的operator=、operator运算符的返回值以及是否应该是成员函数的讨论)
  9. HALCON表面划痕检测
  10. vs界面竖线光标变成灰色方块,输入时替代已有字符