
最短路
持续更新
scau_sleep(今天写bug了吗?
1.一个退役acmer,老年选手
2. 今天喝水了吗?
3. 会写暴力~比不会写强~比不会写优秀
4.不会三分,喜提铁牌。
5. 失败一次不算什么,胸针为了拯救真由里 和 助手。重来3000多次都可以,那我失败几次,又算什么。(命运石之门)
-------如果说这是命运石之门的意志的话
展开
-
[kuangbin带你飞]专题四【最短路练习】(spfa)
预备知识:链式前向星存图推荐bolog建议做题顺序spfa:(10)14 12 13 5 (6)15 18(编号10博主放在了dij专题里)Currency Exchange(poj1860)(正权回路)pictureSample Input3 2 1 20.01 2 1.00 1.00 1.00 1.002 3 1.10 1.00 1.10 1.00Sample Ou...原创 2020-05-19 14:11:57 · 220 阅读 · 1 评论 -
[kuangbin带你飞]专题四【最短路练习】(floyd)
Arbitrage(poj 2240)Arbitrage is the use of discrepancies in currency exchange rates to transform one unit of a currency into more than one unit of the same currency. For example, suppose that 1 US Do...原创 2020-04-16 23:50:57 · 205 阅读 · 0 评论 -
[kuangbin带你飞]专题四【最短路练习】(dij)
Til the Cows Come Home (poj2387)原创 2020-04-14 16:12:12 · 280 阅读 · 0 评论 -
AtCoder Beginner Contest 277 E - Crystal Switches(最短路)
最短路,bfs原创 2022-11-12 22:06:43 · 647 阅读 · 0 评论 -
B. Greg and Graph(floyd)
B. Greg and Graph题意:给你一个图,求两两之间的最短路&&求和。现在会删除n次结点,每次删除结点,它所连接的边也会删除。问:每次删除结点时的,最短路和。AC(1)/*皮卡丘冲鸭!へ /| /\7 ∠_/ / │ / / │ Z _,< / /`ヽ │ ヽ / 〉 Y ` / / イ● 、 ● ⊂⊃〈 / () へ | \〈 >ー 、_ ィ │ // / へ原创 2021-02-28 19:59:02 · 109 阅读 · 0 评论 -
Page Hopping UVA - 821(floyd)
Page Hopping UVA - 821题意:(lrj老师的翻译)最近的研究表明,互联网上任何一个网页在平均情况下,最多只需要单机19次就能到达任意一个其他网页。如果把网页看成一个有向图的结点,则该图中任意两点间的最短距离的平均值是19.求:输入一个n个点的有向图。(任意结点a∈[1,100]\in[1,100]∈[1,100])。数据保证任意两个点之间可以相互到达。求图中任意两点间的最短距离的平均值思路:首先可以发现数据小,又是求最短路,可以考虑floyd观察sample_te原创 2021-02-20 23:00:12 · 129 阅读 · 0 评论 -
有时间再补,先贴三个代码,还是tcl。。。。AtCoder Beginner Contest 190 E - Magical Ornament(最短路&&状压dp)
E - Magical Ornament题意:给你m条边。给你k个点,这k个点要都走到,且最后根据m条边形成一个最短的串。思路:应该是按照每k个点求最长路。之后dp(状压)。AC1#include<iostream>#include<algorithm>#include<vector>#include<queue>using namespace std;int N,M;vector<int>G[1<<17]原创 2021-01-31 00:07:08 · 237 阅读 · 0 评论 -
The Tower of Babylon UVA - 437(DAG上dp+智慧暴力)
The Tower of Babylon UVA - 437题意:有n个立方体。现在要你叠罗汉。且下面的块要严格大于上面的块思路:首先可以想到的是,对立方体进行旋转,之后有三种型号(三条边分别做高,枚举情况)上面其实是拆点的步骤,把一个点拆成多个,因为本身有相等关系,所以肯定不能自己叠自己。之后就是跑DAG去求一个最长路的模板。反思:有一次体会到了next_permutation的强大。(这个使用时,要先排序)AC#include <iostream>#inclu原创 2020-12-08 00:13:58 · 154 阅读 · 0 评论 -
Funny Car Racing UVA - 12661(dij变式)
Funny Car Racing UVA - 12661题意:给你一个 n个点的m条边的 有向图。每一条边都有5个整数,u,v,a,b,t。a:通道开始时间。b:通道关闭的时间。t:赛车通过通道的时间。思路:就是入队时,改一下条件即可。dis【u】变为 到达u的最早时刻。反思:本题有一个很坑的地方。当t>a时,通过不了。qwq。AC#include <iostream>#include <cstring>#include <vector>原创 2020-11-10 22:58:06 · 108 阅读 · 0 评论 -
It‘s not a Bug, it‘s a Feature! UVA - 658(dij + 隐式搜索)
It’s not a Bug, it’s a Feature! 题意:给你一个软件有n个bug。(n<=20)现在提供补丁:(m<=100)每个补丁有一个初态要求。(‘-’,表示该bug必须不存在,‘+’表示必须存在, 0 表示 无所谓)。打完补丁后,有一个终态。(‘-’表示不存在,’+'表示存在,0表示不变)每个补丁都有个执行时间。思路:可以知道,一个软件的可能状态数是2n2^n2n种,假如直接暴力。可能会TLE这里引进一种方法(紫薯介绍的)隐式图搜索当需得到某个结点原创 2020-11-10 11:36:27 · 161 阅读 · 0 评论 -
Audiophobia UVA - 10048(floyd 变式)
Audiophobia UVA - 10048题意:给你m条边。要你求任意两点之间的最大边权(尽可能小)思路:数据小,且求任意两点,可以用floyd。AC#include <iostream>#include <cstring>#define mst(x,a) memset(x,a,sizeof(x))#define For(i,x,y) for(int i=(x); i<=(y); i++)using namespace std;const int原创 2020-11-08 18:21:57 · 121 阅读 · 0 评论 -
Calling Circles UVA - 247(floyd传递闭包+dfs求连通块 || tarjan 求强连通分量)
Byte.parseByte(string s)Short.parseShort(string s)Integer.parseInt(string s)Long.parseLong(string s)Float.parseFloat(string s)Double.parseDouble(string s)Boolean.parseBoolean(string s)原创 2020-11-07 20:08:19 · 160 阅读 · 0 评论 -
AtCoder Beginner Contest 176(ABCDE)D题撒币了,int写成bool
A - Takoyaki题意:给你n,x,t。其中做x个小吃的时间为t。每次制作都要时间t。思路:就是向上取整就好。AC#include <iostream>using namespace std;int main(){ int n,x,t; cin>>n>>x>>t; int num=(n+x-1)/x; cout<<num*t<<endl; return 0;}B -原创 2020-08-22 22:19:27 · 203 阅读 · 0 评论 -
专题十 匹配问题 POJ 2594 Treasure Exploration -----DAG最小相交路径覆盖(DAG二分图最大匹配+floyd传递闭包)
POJ 2594 Treasure Exploration题意:在一个DAG(有向无环图)里,求最小路径数点覆盖。(线路可以相交)反思:最小路径覆盖数=n−maxmatch最小路径覆盖数=n-maxmatch最小路径覆盖数=n−maxmatch相关证明1:传送门相关证明2:传送门思路1:先跑一遍floyd传递闭包。之后跑最大匹配。AC1#include <iostream>#include <cstring>#include <algorit原创 2020-08-13 16:05:17 · 185 阅读 · 0 评论 -
2017 ccpc final J Subway Chasing(差分约束)
Subway Chasing HDU - 6252(差分约束)题意:有n个站。有两个人A和B。(A先出发),x min后,B也出发了有m次询问。每次都[ a,b ] 和 [c,d](abcd分别表示车站,且b<=a+1(d<=c+1))找到一组满足的解。(每个车站的时间差)思路:差分约束。反思:连边时,(由于是不等式)注意符号!!!!!!!一般dis[v]<=dis[u]+w;上面就是add(u,v,w)。假如是<时,那么要转换成<=.方法是原创 2020-07-30 21:54:47 · 267 阅读 · 0 评论 -
kuangbin专题带你飞 十一网络流 hdu3416(最短路+最大流)
Marriage Match IV HDU - 3416题意:有n个城市。给你m条边。图为有向图。问你每次都走最短路,且走过的边不再走。可以到几次终点。思路:最短路+网络流。把最短路径上的边加入到网络流里。之后跑一遍最大流...原创 2020-07-29 22:35:13 · 199 阅读 · 0 评论 -
Atcoder ABC168 B--D题 题解(B:string的使用, c: 数学三角函数 D:最短路的应用 || 遍历图bfs)&&最短路复习
B - … (Triple Dots)题意:让你把一个string的长度变为小于k。大于部分用省略号。总结:string 里的 s.substr(地址,长度)。此函数功能是取子串。AC#include <iostream>#include <string>using namespace std;int main(){ int k; cin>>k; string s,t; cin>>s; i原创 2020-05-19 18:41:08 · 325 阅读 · 0 评论