图论--最短路
妖怪吧
这个作者很懒,什么都没留下…
展开
-
洛谷1576最小花费
题目背景题目描述在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。输入输出格式输入格式: 第一行输入两个正整数n,m,分别表示总人数和可以互相转账的人的对数。以下m行每行输入三个正整数x,y,z,表示标号为x的人和标号为y的人之间互相转账需要扣除z%的手续费 (z<1原创 2017-12-23 10:52:07 · 230 阅读 · 0 评论 -
BZOJ 2200: [Usaco2011 Jan]道路和航线
Time Limit: 10 Sec Memory Limit: 259 MB Submit: 900 Solved: 338 [Submit][Status][Discuss] Description Farmer John正在一个新的销售区域对他的牛奶销售方案进行调查。他想把牛奶送到T个城镇 (1 <= T <= 25,000),编号为1T。这些城镇之间通过R条道路 (...原创 2018-07-09 09:00:17 · 248 阅读 · 0 评论 -
poj 1734 Sightseeing trip
Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7827 Accepted: 2956 Special JudgeDescription There is a travel agency in Adelton town on Zanzibar island. It has decided to...原创 2018-07-09 09:48:23 · 152 阅读 · 0 评论 -
poj 3463 Sightseeing
传送门解题思路最短路及次短路基数问题,用dijkstra,dis[i][0/1]表示点i处的次短路/最短路,num[i][0/1]表示路径条数。然后dijkstra,注意外面的循环要2*n-1次。代码#include<iostream>#include<cstdio>#include<cstring>using namespa...原创 2018-07-09 11:26:32 · 171 阅读 · 0 评论 -
BZOJ 1491: [NOI2007]社交网络
传送门解题思路数据范围很小,我们考虑floyd。要求的是路径条数,所以我们在floyd的时候直接预处理出两点之间的路径条数。用num[i][j] 表示,然后floyd的时候,如果dis[i][j] 代码#include<iostream>#include<cstdio>#include<cstring>using namespac...原创 2018-07-09 19:24:16 · 109 阅读 · 0 评论 -
tyvj 1423 GF和猫咪的玩具
传送门解题思路题目比较水,floyd求出最短路取个最小值即可。结果joyoi时限写错了。。好像只有0ms才能过??突然发现加了快读就T不加就A,数据在10000以下的还是scanf快啊。代码#include<iostream>#include<cstdio>#include<cstring>using namespace st...原创 2018-07-10 21:09:09 · 373 阅读 · 0 评论 -
BZOJ 2763: [JLOI2011]飞行路线
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 4298 Solved: 1655 [Submit][Status][Discuss] Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,...原创 2018-07-04 16:25:45 · 209 阅读 · 0 评论 -
ZJOI 2006 物流运输 bzoj1003
题目描述物流公司要把一批货物从码头A运到码头B。由于货物量比较大,需要n天才能运完。货物运输过程中一般要转停好几个码头。物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪。由于各种因素的存在,有的时候某个码头会无法装卸货物。这时候就必须修改运输路线,让货物能够按时到达目的地。但是修改路线是—件十分麻烦的事情,会带来额外的成本。因此物流公司希望能够订一个n天的运输计划,...原创 2018-06-04 11:24:57 · 189 阅读 · 0 评论 -
BZOJ 1179: [Apio2009]Atm
传送门解题思路今天这是咋了。。写了一堆假算法给了一堆假分。我竟然刚开始傻不拉几的写了个dijkstra跑最长路,结果87分???后面被告知只有spfa能跑最长路,并且需要将点权化为边权。。做法是因为所有atm都是非负数,所以不抢白不抢,我们考虑缩点。缩完点之后spfa最长路即可。多亏GhostCai神,要不得调几天估计。。。代码#include<iostream&...原创 2018-07-15 21:20:10 · 112 阅读 · 0 评论 -
LUOGU P2939 [USACO09FEB]改造路Revamping Trails
题意翻译约翰一共有N)个牧场.由M条布满尘埃的小径连接.小径可 以双向通行.每天早上约翰从牧场1出发到牧场N去给奶牛检查身体.通过每条小径都需要消耗一定的时间.约翰打算升级其中K条小径,使之成为高 速公路.在高速公路上的通行几乎是瞬间完成的,所以高速公路的通行时间为0.请帮助约翰决定对哪些小径进行升级,使他每天从1号牧场到第N号牧场所花的时间最短 题目描述Farmer John ...原创 2018-08-21 18:48:02 · 258 阅读 · 0 评论 -
LUOGU P1073 最优贸易
传送门解题思路首先可以将无向图视作有向图,然后建立一个反图,之后正着跑一遍最短路存到dis里,dis[x]表示1-x的路径中权值最小节点的权值,反着跑一遍最长路,dis_[x]表示x-n中权值最大的节点的权值,之后用dis_[x]-dis[x]来更新答案。代码#include<iostream>#include<cstdio>#include...原创 2018-07-08 19:20:25 · 140 阅读 · 0 评论 -
poj 3662 Telephone Lines
题面解题思路这道题有两种方法可以做,第一种可以选择dp,与BZOJ 2763 飞行路线的做法相似。定义dp[x][i] 表示到了x这个点,用了i次免费的最小值,之后便可以在最短路中转移。我用的是spfa,时间复杂度O(NMt) t是一个常数,还是可以过得。代码#include<iostream>#include<cstdio>#includ...原创 2018-07-08 19:10:39 · 373 阅读 · 0 评论 -
最短路 Dijkstra模板
普通dijkstra,复杂度O(n*n)#include<bits/stdc++.h>using namespace std;int n,m,f[105][105],dis[105]; bool b[105]; //n为总共的点数,m为路径数,f数组记录两个点的距离,dis数组记录每个点到原点的距离 int main(){ scanf("%d%d",&am...原创 2017-12-19 23:23:21 · 205 阅读 · 1 评论 -
洛谷1828 香甜的黄油
题目描述农夫John发现做出全威斯康辛州最甜的黄油的方法:糖。把糖放在一片牧场上,他知道N(1农夫John很狡猾。像以前的Pavlov,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。农夫John知道每只奶牛都在各自喜欢的牧场(一个牧场不一定只有一头牛)。给出各头牛在的牧场和牧场间的路线,找出使所有牛到达的路程和最原创 2018-01-14 17:23:13 · 508 阅读 · 2 评论 -
洛谷1339 热浪
题目描述The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for good eating but are not so adept at creating creamy delicious dairy products. Farmer John is leading原创 2018-01-14 17:44:16 · 248 阅读 · 0 评论 -
洛谷1346 电车
题目描述在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能)。在每个路口,都有一个开关决定着出去的轨道,每个开关都有一个默认的状态,每辆电车行驶到路口之后,只能从开关所指向的轨道出去,如果电车司机想走另一个轨道,他就必须下车切换开关的状态。为了行驶向目标地点,电车司机不得不经常下车来原创 2018-01-19 16:50:14 · 322 阅读 · 0 评论 -
洛谷1144 最短路计数
题目描述给出一个N个顶点M条边的无向无权图,顶点编号为1~N。问从顶点1开始,到其他每个点的最短路有几条。输入输出格式输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数。接下来M行,每行两个正整数x, y,表示有一条顶点x连向顶点y的边,请注意可能有自环与重边。输出格式: 输出包括N行,每行一个非负整数,第i行输出从顶点1到顶点i有多少条不同的最短路,由于答案有原创 2018-01-19 16:52:43 · 228 阅读 · 0 评论 -
spfa(模板)
#include<iostream>#include<cstdio>#include<cstring>#include<queue>using namespace std;const int MAXN = 10005,MAXM = 500005;struct Edge{ int nxt,to,v;}edge[MAXM];...原创 2018-04-26 00:07:36 · 123 阅读 · 0 评论 -
poj1094 Sorting It All Out
DescriptionAn ascending sorted sequence of distinct values is one in which some form of a less-than operator is used to order the elements from smallest to largest. For example, the sorted sequence ...原创 2018-04-27 00:08:41 · 90 阅读 · 0 评论 -
洛谷3393 逃离僵尸岛
题目描述小a住的国家被僵尸侵略了!小a打算逃离到该国唯一的国际空港逃出这个国家。该国有N个城市,城市之间有道路相连。一共有M条双向道路。保证没有自环和重边。K个城市已经被僵尸控制了,如果贸然闯入就会被感染TAT…所以不能进入。由其中任意城市经过不超过S条道路就可以到达的别的城市,就是危险城市。换句话说只要某个没有被占城市到某个被占城市不超过s距离,就是危险。小a住在1号城市,国际空...原创 2018-05-07 00:19:55 · 178 阅读 · 0 评论 -
BZOJ 2662: [BeiJing wc2012]冻结
Time Limit: 3 Sec Memory Limit: 128 MB Submit: 1186 Solved: 654 [Submit][Status][Discuss] Description“我要成为魔法少女!” “那么,以灵魂为代价,你希望得到什么?” “我要将有关魔法和奇迹的一切,封印于卡片之中„„” 在这个愿望被实现以后的世界里,人们享受着魔法卡片...原创 2018-06-18 10:59:34 · 195 阅读 · 0 评论 -
LUOGU P2296 寻找道路 (noip 2014)
传送门解题思路首先建一张反图,从终点dfs出哪个点直接或间接相连,然后直接跑最短路,跑的时候判断一下所连的点是否与终点相连。代码#include<iostream>#include<cstdio>#include<cstring>#include<queue>#include<cmath>#inclu...原创 2018-08-25 22:10:37 · 8768 阅读 · 0 评论