最短路
文章平均质量分 53
dance_in_the_dark
这个作者很懒,什么都没留下…
展开
-
第一次icpc集训(wednesday)
总结:这次的比赛总的来说并不算,排名接近垫底。总的来说,原因可以分为两个方面:1、比赛开头并没有打好,签到题wa了两次,模拟题没有迅速拿下2、队伍配合方面尚需要磨合,由于是第一次打配合,每个人的优势并没有得到充分的显现。3、就本人而言,太久没有搞竞赛算法敏感度下降,该切的题目没切下来...原创 2020-03-12 11:49:07 · 213 阅读 · 0 评论 -
【JZOJ5287】【NOIP2017提高A组模拟8.16】最短路
DescriptionData ConstraintSolution我被坑了,他的环是指一个边双联通分量…… 我们若处理出起点到每个点的最短距离d,那么若询问x,y的lca不在一个环上,那么答案显然是d[x]+d[y]-2*d[lca],那么若lca在环上呢?我们处理出起点到每个点的在dfs树上的距离deep[x]和每个边双的长度len,那么显然环上两个点x,y的最小距离即min(|deep[x]原创 2017-08-22 22:53:04 · 341 阅读 · 0 评论 -
【JZOJ3773】【NOI2015模拟8.15】小 P 的烦恼
Description小 P 最近遇上了大麻烦,他的高等代数挂科了。于是他只好找高代老师求情。善良的高代老师答应不挂他,但是要求小 P 帮助他一起解决一个难题。 问题是这样的,高代老师近期要组织班上同学一起去漂流,漂流可以看做是在一张 n 个点 m 条边的有向无环图上进行的,点编号从 0 到 n-1 ,表示景点; 边是连接各景点的一定长度的河道。同时,定义编号为 s 是起点而 t 是终点。我们不妨原创 2017-08-09 10:23:11 · 321 阅读 · 0 评论 -
【JZOJ2702】【GDKOI2012模拟02.01】探险
DescriptionData Constraint对于30%的数据,n<=500,m<=10000 对于60%的数据,n<=2000,m<=50000 对于100%的数据,n<=10000,m<=200000,1<=w,v<=10000 Solution我们要求最后不能经过同一暗道两次,所以我们用spfa求出起点到每个点在第一条出边不相同的情况下的最短路和次短路。然后枚举一条直接连向起点的边,原创 2017-07-15 22:14:57 · 323 阅读 · 0 评论 -
【JZOJ5100】【GDOI2017 day2】RPG
Description 这是一个传说中的勇者凡喵,救出被掳走的公主,顺道打倒妄图控制世界的恶龙拯救世界的故事。 有趣的是,凡喵这一次进入恶龙巢穴时,发现恶龙刚好外出。于是凡喵决定先去拯救公主,至于拯救世界什么 的,还是开心最重要。 凡喵出发前从冒险者公会购买了一张恶龙巢穴的地图。 恶龙巢穴建立在地下。一共有 H 层,从地下 1 层到地下 H 层。每层是一个迷宫,有 N原创 2017-05-07 13:07:22 · 470 阅读 · 0 评论 -
【JZOJ4964】【GDKOI2017模拟1.21】Rhyme
Description由于多次交换邮票没有满足所有人的邓翔玮需求,小Z被赶出了集邮部。无处可去的小Z决定加入音乐部,为了让音乐部的人注意到自己的才华,小Z想写一首曲子。为了让自己的曲子更好听,小Z找到了一些好听曲子作为模板。曲谱可以表示成只包含小写字母的字符串,小Z希望自己最终的曲谱中任意一个长度为K的子串都是一个模板的子串。现在小Z想知道自己的曲谱最长可以是多长,如果可以无限长的话请输出INF。D原创 2017-01-21 20:13:21 · 540 阅读 · 0 评论 -
【JZOJ4963】【GDKOI2017模拟1.21】Book
Description曾经有一枚珍稀的邮票摆在我的面前, 我没有好好珍惜 等到失去时 才感到后悔。 ——小Z 小Z曾经是集邮部的成员,集邮部经常举办换邮票活动。活动中,如果两个人互相喜欢对方的邮票,那么这两个人就可以彼此交换自己的邮票。但在这个规则下,小Z没有换到自己喜欢的邮票。小Z觉得这是规则不完善导致的,于是小Z决定制定一个新的交换规则:每次可以选择任意多个人排成一个圆圈,如果每个人都喜欢原创 2017-01-21 19:52:04 · 428 阅读 · 0 评论 -
【51nod1326】遥远的旅途
Description一个国家有N个城市,这些城市被标为0,1,2,…N-1。这些城市间连有M条道路,每条道路连接两个不同的城市,且道路都是双向的。一个小鹿喜欢在城市间沿着道路自由的穿梭,初始时小鹿在城市0处,它最终的目的地是城市N-1处。小鹿每在一个城市,它会选择一条道路,并沿着这条路一直走到另一个城市,然后再重复上述过程。每条道路会花费小鹿不同的时间走完,在城市中小鹿不花时间逗留。路程中,小鹿可原创 2017-02-10 22:27:05 · 885 阅读 · 0 评论 -
【JZOJ3891】【NOIP2014模拟10.25A组】钻石交易
DescriptionData ConstraintSolution想必60分的算法很好想。我们设出f[i][j]表示当前到了i号点,已卖出的钻石的二进制状态为j。那么在spfa中转移显然有f[i][j]=max(f[i’][j’]-dist(i’,i)+a[i][x])。a[i][x]表示在i卖出第x颗钻石使得状态j’->j。那这样复杂度为O(N∗2M∗2TN*2^M*2T),超时不可避免。 我原创 2017-01-20 21:39:12 · 399 阅读 · 0 评论 -
【JZOJ3852】【spfa判负环】【NOIP2014八校联考第2场第2试9.28】单词接龙(words)
DescriptionBsny从字典挑出N个单词,并设计了接龙游戏,只要一个单词的最后两个字母和另一个单词的前两个字母相同,那么这两个单词就可以有序的连接起来。 Bsny想要知道在所给的所有单词中能否按照上述方式接龙组成一个单词环(可能是多个),若能,求所有环的环中单词平均长度最大值。Data Constraint20%的数据:n≤20; 70%的数据:n≤1000; 100%的数据:n≤10原创 2017-01-14 22:26:49 · 608 阅读 · 0 评论 -
spfa算法的一些优化
SLF优化:对于一个要加入到队列中的点j,假如有dist[j]< dist[i] (i表示队首元素),那么则把当前元素插入到队首,否则插入到队尾。 SLF 可使速度提高 15 ~ 20%LLL优化:我们将当前队列中的所有元素的dist取个平均数x,假如当前取出的队首元素i的dist[i]>x,那么将i插入到队尾,继续查找下一元素,直到找到dist[i]<=x。SLF + LLL 可提高约 50%个人原创 2016-11-14 22:15:38 · 2426 阅读 · 0 评论 -
JZOJ4893【NOIP2016提高A组集训第15场11.14】过河
DescriptionData ConstraintSolution这道题很容易就想到是spfa。但问题就是怎样处理连边问题。普通的连边是O(N4N^4)的,显然空间和时间都不允许。我们可以将半径从大到小排序。显然加入对于一个点对(i,j),假如i选择了半径x,j选择半径y可以相切或相交,那么j选择半径>=y的也一定是可以的。所以我们只要向j满足相交的最低条件的y连一条边即可。那么我们怎样处理i连向原创 2016-11-14 22:03:31 · 588 阅读 · 0 评论 -
JZOJ4868. 【NOIP2016提高A组集训第9场11.7】Simple
DescriptionData ConstraintSolution我们先来看一下不考虑重复时的的做法,对于一个固定的x,y的取值范围明显是[0,⌊c−n∗xm⌋\lfloor{{c-n*x}\over{m}}\rfloor]。所以我们枚举x,就可以算出对应的值。ans=∑⌊qn⌋x=0⌊c−n∗xm⌋\sum_{x=0}^{\lfloor{q\over{n}}\rfloor}{\lfloor{{c原创 2016-11-07 17:27:59 · 577 阅读 · 0 评论 -
JZOJ4855. 【NOIP2016提高A组集训第6场11.3】荷花池塘
Description于大夫建造了一个美丽的池塘,用来让自己愉快的玩耍。这个长方形的池子被分割成了M 行和N 列的正方形格子。池塘中有些地方是可以跳上的荷叶,有些地方是不能放置荷叶也不能跳上的岩石,其他地方是池水(当然于大夫也是不能游泳的)。于大夫十分有趣,他在池塘跳跃的方式和象棋中的马一样可以向八个方向走日字形,而且于大夫只能跳上荷叶。于大夫每天从一个给定的有荷叶的地方出发,试图到达另一个给定的有原创 2016-11-03 15:37:42 · 598 阅读 · 0 评论 -
GDOI【4802】探险计划
Description这一天,Hnsdfz信息组的众人决定上岳麓山玩.岳麓山上的可以探险的地方非常多,而信息组的Oier们給每一个地方都设定了一个危险值,代表探险这个景点需要承担的危险,而整个岳麓山可以抽象为由n行数字组成的数字梯形.而梯形顶端有m个数字,在每个数字处可以往左上或右上移动 ( (i,j) 可以到 (i-1,j) 或 (i-1,j-1), (i,j)表示输入文件中数字梯形的第i行第j列原创 2016-09-25 11:16:35 · 430 阅读 · 0 评论 -
CF 710E Generate a String
Description给定一个N,X,Y,现要求从0一直转移到n。对于每次转移,分为3种方法。第一种:将现在的值乘2,其代价为y。第二种:将现在的值减1,其代价为x。第三种:将现在的值加1,其代价为x。求从0转移到n的最小代价。数据限制n<=10710^7 ,x、y<=10910^9Solution我们容易想到这是一个最短路问题。将两个数的一次转移视为一条路径,转移代价为路劲的权值,这就构成一个最短原创 2016-08-26 18:35:32 · 604 阅读 · 0 评论 -
NOIP提高组 树塔狂想曲
Description相信大家都在长训班学过树塔问题,题目很简单求最大化一个三角形数塔从上往下走的路径和。走的规则是:(i,j)号点只能走向(i+1,j)或者(i+1,j+1)。如下图是一个数塔,映射到该数塔上行走的规则为:从左上角的点开始,向下走或向右下走直到最底层结束。 1 3 8 2 5 0 1 4 3 8 1 4 2 5 0路径最大和是1+8+5+4+4 = 2原创 2016-09-03 21:32:27 · 541 阅读 · 0 评论