dijkstra
文章平均质量分 63
Faithfully__xly
这个作者很懒,什么都没留下…
展开
-
多源最短路的学习&应用
还是接触了好几道多源最短路了。结果每次都发现自己并没有真正理解,做一道错一道(不过乐观一点想,也是做一道错一道学一道啦qwq) 初次相遇:HDU6166 官解:按照点的标号的每个二进制位分组,最多分20次(准确的说是17次)。每次会把某一位不同的点分开到起点和终点集,然后再起点终点互换,再做一次。 正确性在于:对于任意两个点u和v,u和v是不同的点,必然有至少一个位不同,因此至少有一次他们被分到了...原创 2019-11-08 18:24:12 · 186 阅读 · 0 评论 -
最短路 - 墨墨的等式(BZOJ 2188)
传送门 Analysis 经典 思考如果B的范围没有那么大,比如在1e6左右,我们该如何做 将这个式子文字化描述一下,即: 有a1~an这n个数,现在可以任意选取若干个,问数字B能否被凑出 这样一转化,便很背包了(存在性背包) 但背包的做法很受B的范围影响 考虑如何将其缩小 思考无果,还是太菜了 : 我们去0后取出最小的a[i],记为p,然后考虑模p下的B(这样B的范围就被缩小到了5e5) 一...原创 2019-08-12 18:31:50 · 86 阅读 · 0 评论 -
最短路树+并查集 - 安全出行Safe Travel(usaco 2009)
描述 输入 第一行: 两个空格分开的数, N和M 第2…M+1行: 三个空格分开的数a_i, b_i,和t_i 输出 第1…N-1行: 第i行包含一个数:从牛棚_1到牛棚_i+1并且避免从牛棚1到牛棚i+1最短路经上最后一条牛路的最少的时间.如果这样的路经不存在,输出-1. 样例输入 4 5 1 2 2 1 3 2 3 4 4 3 2 1 2 4 3 样例输出 3 3 6 Analysis 只...原创 2019-02-19 15:53:28 · 423 阅读 · 0 评论 -
分层图(网络流)- 孤岛营救问题(luogu 4011)
传送门 牢骚写在前面 好久好久没有更过博客了 上一篇板子纯粹是为了自己记住,都没有好好写过题解了 自从考完noip,整个人都颓了,连“退役记”“游记”都没有写 不过,这些都不重要了 我还在这条路上摸爬滚打着 博客还是要更的 就像是日子总要过下去 Analysis 建图好题! 听说状压也可以乱搞,不过我还是乖乖练习一下建图 思考在一张图上,按照常规思路建图,然后跑最短路 如果没有钥匙,显然是可以...原创 2019-01-23 09:30:14 · 282 阅读 · 1 评论 -
NOIP2017提高组DAY1T3 - 逛公园(超详细&两种做法)
传送门 Analysis 首先看到这道题,暴力30分很好打 针对k=0k=0k=0的情况,我们直接最短路计数就可以了 然后还是从k入手,发现k最多只有50,是个突破口 我们可以试着每次枚举k,限制路径长度然后计数,最后相加 如果令f[u][j]f[u][j]f[u][j]表示当前在u这个点,与 u 到 1 的最短路相差 j 的路径条数 那么怎么更新这个状态呢? 令 v 能够到 u 那么可以得到:...原创 2018-11-03 21:46:26 · 761 阅读 · 0 评论 -
次短路 - Roadblocks(Usaco2007nov)
传送门 Unhappiness (。•ˇ‸ˇ•。)数组卡着开的2e5,然后按我的写法就莫名其妙WA一个点 换成网上标程又可以过 这数组越界很不爽啊 玄学的错误总是让人心肌梗塞(# ̄~ ̄#) 事实证明数组还是开大一点比较好啊(当然,不能MLE) Analysis 次短路就是在最短路的基础上换一些边 那很显然,我们就做两遍最短路,分别处理出从1开始和从n开始到每一个点的最短路 然后枚举每一条边,看...原创 2018-10-28 21:52:54 · 128 阅读 · 0 评论 -
1025 - 最短路计数 - 统计最短路(???)
统计最短路 描述 给出n个点,m条带权无向边,问你从1号点到n号点的最短路中有多少种走法? 输入 第一行两个数n,m分别表示点的个数和边的个数。(2≤n≤5000,1≤m≤100000) 接下来m行,每行3个数u,v,w表示u号点到v号点有一条距离为w的边。(1≤u,v≤n,0≤w≤5000) 数据保证1号点能够到达n号点,点和边都可以被走多次。 输出 如果有无穷种走法,输出-1。否则输出走法的方...原创 2018-10-25 14:41:21 · 523 阅读 · 0 评论 -
1025 - 最短路计数 - 路径统计(luogu 1608)
传送门 分析 用dijkstra跑一遍最短路,在这个过程中,转移一下就可以得到答案了 如果当前点 vvv满足 dis[v]==dis[u]+w[e] dis[v]==dis[u]+w[e]dis[v]==dis[u]+w[e] 那么 ans[v]=ans[u]+ans[v]ans[v]=ans[u]+ans[v]ans[v]=ans[u]+ans[v],相当于原来有ans[v]ans[v]ans...原创 2018-10-25 14:31:05 · 712 阅读 · 0 评论 -
0924-安徽省选 2002-哈利●波特与魔法石
题目描述 某天,哈利•波特准备去拯救 Super Swamuel 星球上的生灵。该星球上有七种不同的地形,依次分别是:石子路、森林、草地、山地、雪地、沼泽和沙漠。分别用数字 1~7 来表示,穿越这七种地形需要的时间分别用 h1~h7 表示。 任意两个城市之间都存在至少一条通路,而且任意两个直通的城市之间都只存在一种地形。哈利•波特穿越地形 u 所需要的时间与该地形的区域大小无关,而与地形 u ...原创 2018-09-24 22:20:40 · 247 阅读 · 0 评论 -
0819-最短路-洛谷P1828 香甜的黄油
传送门 分析 最短路模板,dijkstra+堆优化或者 spfa 都可以做,floyd 就别来啦 枚举每一个可能作为放糖的牧场,然后最短路跑一遍求出每个牧场到该牧场的最短距离,累加,打擂台,得出答案 我一直被卡在建边上,之前偷懒用的矩阵存储,一直TLE,后来改回邻接表,分分钟AC,所以啊建边一定要用邻接表,血的教训啊 代码 #include<cstdio> #...原创 2018-08-19 15:09:08 · 279 阅读 · 0 评论