题目 有一个地铁环线,环线中有N个站台,标号为0,1,2,...,N 1。这个环线是单行线,一共由N条有向边构成,即从0到1,1到2,..k到k+1,...,N 2到N 1,N 1到0各有一条边。定义两站之间的距离,站a与站b间的距离dis(a,b)指从a站出发沿着单行线的边走到达b时所经过的全部长 ...
分类:
其他好文 时间:
2018-10-17 00:27:05
阅读次数:
186
2370 小机房的树 //讲真我觉得这题面有点恶心QAQ 大体思路:树上的最短路径一定经过两点lca, 预处理一个dis数组, 存每个点到根节点的距离, 两点(x, y) 之间的距离即为dis[x] + dis[y] - 2*dis[lca] ; 然后倍增求lca即可,dis数组在预处理每个点深度的 ...
分类:
其他好文 时间:
2018-10-15 12:15:36
阅读次数:
135
题目求一种方案,使得图全连通并且所有边费用与距离之商最小 $\sum_{i∈e}cost_i$除以$\sum_{i∈e}dis_i$最小 可以考虑二分求解 可以假设这个值小于等于L时 存在 一个解,然后检查是否存在这个解,如果不存在说明L取小了 问题是为什么要假设“存在”,事实上如果假设“任意”,那 ...
分类:
其他好文 时间:
2018-10-14 16:54:56
阅读次数:
140
一、空间占据 display: none; 是彻底消失,不在文档流中占位,浏览器也不会解析该元素 visibility:hidden; 是视觉上消失了,可以理解为透明度为0的效果,在文档流中占位,浏览器会解析该元素; 使用visibility:hidden比display:none性能上要好,dis ...
分类:
其他好文 时间:
2018-10-14 16:41:34
阅读次数:
198
题面 考虑一个点$x$,如果某两个点$u,v$间的所有最短路都经过$x$,那么$x$肯定是重要的。这个题$n$比较小,所以我们直接跑floyd,在过程中记录 当发生松弛时,我们具体讨论: 如果这个长度是两点间新更新出的一条最短路,即$dis[i][j]>dis[i][k]+dis[k][j]$,我们 ...
分类:
Web程序 时间:
2018-10-13 02:46:03
阅读次数:
170
题目传送门:http://hihocoder.com/problemset/problem/1192 大意:给出一棵$N$个点的树,边权为$1$,要求给每个点构造$M$个权值$v_1...v_M$,使得对于任意$i,j$,都有$dis(i,j)=\sum\limits_{i=1}^M |v_i-v_ ...
分类:
其他好文 时间:
2018-10-08 22:17:16
阅读次数:
223
传送门 解题思路 又是一道语文题,弄清楚题意之后其实就能想出来了,从1跑一遍最短路,把$dis[n]$加入答案。在建个反图跑一遍最短路,把$dis[n]_$加入最短路就行了。第一遍是去的时候,第二遍是回的时候。 #include<iostream> #include<cstdio> #include ...
分类:
其他好文 时间:
2018-10-07 23:20:47
阅读次数:
230
样例 5 1 3 2 -3 6 -2 3 2 5 1 5 0 1 2 1 4 0 2 3 5 4 10 3 5 思路 坑啊,当时没打出来,精度问题,double返回int再返回到double函数里位数不一样(用一个变量存一下),其实很简单,先FLOYD一下,再找dis>p的点,把序号扔进数组里。 如 ...
分类:
其他好文 时间:
2018-10-05 16:15:34
阅读次数:
229
图论 图的存储 邻接矩阵 O(1) 查找 是否存在,大小边表 1.最短路floyd:dijkstra:O(n^2+m)->(堆优化)->STL O((n+m)logm) 一个点加多次 ->手写堆 O((n+m)logn) 避免重复加元素,支持直接改元素图中没有负边 dis>=0spfa:最坏 O(n ...
分类:
其他好文 时间:
2018-10-04 18:55:24
阅读次数:
182
"题目链接" 题意 N个城市M条路径,给定起点A,终点B,求有几条从A到B的最短路(其中每经过的路径不能重复) 解题思路 先用最短路求出A到B的最短路Min,也求出A到每个城市的距离dis[N],然后反向求B到A的最短路,得到B到每个城市的最短距离dis2[N],然后遍历每条路径edge,如果dis ...
分类:
其他好文 时间:
2018-10-04 12:20:27
阅读次数:
149