随笔分类 -  图论 -- 最短路

摘要:$CSP\space S$ 格雷码 $solution:$ 直接模拟即可。 时间复杂度 $O(n)$ 。 #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> using namespace std; vo 阅读全文
posted @ 2019-11-21 19:38 siruiyang_sry 阅读(315) 评论(0) 推荐(2)
摘要:link $solution:$ 大力线段树即可。 有一个简单做法为在每一个线段树的节点维护一个 $set$ ,线段树存 $x$ 轴, $set$ 维护 $y$ 轴,然后每次暴力取点 $dijkstra$ 即可。 因为线段树上最多 $n\log n$个点,在线段树上取点后还要删除此点,动态维护,不直 阅读全文
posted @ 2019-07-22 16:26 siruiyang_sry 阅读(475) 评论(0) 推荐(1)
摘要:link 这题卡我精度,调了一晚上才调对,因为没有想到图还可以不连通 其实可以预处理出好多东西,距离($dis(u,v)$),买卖物品(从$u$到$v$买卖物品的最大利润,例($max{S_{u,i}-B_{v,i}}$),然后其实可以发现就是一个十分普通普遍的分数规划式子,就每次二分$k$,然后建 阅读全文
posted @ 2018-12-03 22:10 siruiyang_sry 阅读(163) 评论(0) 推荐(0)
摘要:题目 题解 T1: 简单$bfs$或者跑个最短路即可 #include<iostream> #include<cstring> #include<cstdio> #include<cmath> #include<queue> #include<algorithm> using namespace s 阅读全文
posted @ 2018-11-02 19:29 siruiyang_sry 阅读(204) 评论(0) 推荐(0)
摘要:link 考虑暴力,每个狗直接向他能到达的点连一条以到达时间为边权的边,然后跑$spfa$即可,建变数量$N\times M$ 但是$N \leq 30000,M \leq 30000$,所以优化建图,怎么搞呢,分块大法。我们设定$i\times n+j$想做在第$j$个大楼上有第$i$个窗户,能直 阅读全文
posted @ 2018-10-26 14:43 siruiyang_sry 阅读(287) 评论(0) 推荐(0)
摘要:题目 W神爷的题解 高级数据结构 T1: 其实是一道easy题,$O(n^3log n)$ 也是能卡过去的,本着要的70分的心态,最后尽然A了。 如果是正解则是$O(n^3)$,当确定你要选择的列时,不断往下扩展,因为此刻是单调函数,所以可以用单调队列优化。 #include<iostream> # 阅读全文
posted @ 2018-10-22 20:58 siruiyang_sry 阅读(174) 评论(0) 推荐(0)
摘要:题目传送门 此题主要考察的是思想,可以借助最短路的思想去做,我写的是dijkstra,通过每次找中间点的方式,两次操作(请读者慢慢思考) 而两次操作一次跑的是题目上给的边,第二次跑的是反向边,请读者好好思考 而既然借助dijkstra的思想,每次找点,请注意,此坑本作者语文能力有限,无法讲解 #in 阅读全文
posted @ 2018-08-31 22:31 siruiyang_sry 阅读(263) 评论(0) 推荐(0)
摘要:题目:链接: https://pan.baidu.com/s/1ef_9hGBhczW0B4dz5IUKmw 密码: qgjy T1: hash后直接二分查询即可 #include<iostream> #include<cstdio> #include<cstring> #include<algor 阅读全文
posted @ 2018-08-10 22:06 siruiyang_sry 阅读(163) 评论(0) 推荐(0)