ACM 最短路
文章平均质量分 73
huixisheng
无所谓结果如何,只要一直坚持并努力就好!!
展开
-
最短路 2544hdu
#include//最短路的,数据结构开始学习树了,貌似程序员考试要考最短路的,所以我就准备向把这方面的题目 //做下,在参考别人的代码后很痛苦的AC了,因为注释@#includeusing namespace std;int map[105][105];int main(){ int n, m, a, b, c; while(scanf("%d %d", &n,原创 2010-04-13 18:27:00 · 433 阅读 · 0 评论 -
hdu 1531 King (差分约束 + Bellman) 还不是很懂 差分约束 + SPAF
/*一下是一位牛人的分析: 还是感觉不懂,但是为了练Bellman 还是决定要好好学懂来。。题目大意:有整数序列 S = {a[1],a[2],...,a[n]},和 m个子序列 Si = {a[si],a[si+1],...,a[si+ni]}约束条件 sigma(Si) ki,问是否有序列 S能满足所有的约束输入:n,m,当n = 0时结束约束条件si,ni,oi,ki分析:条件很明显了,约束条件都出来了,不用自己构造了,但是需要转换一下如第一个Samp原创 2010-07-13 19:33:00 · 701 阅读 · 0 评论 -
hdu 2377 Bus Pass(学了下邻接表)
<br />/* 逼着自己去写邻接表,xwc给我讲过大致如何构造,听其实还是简单的。可是写起来稍微有点困难的 光是建表就很纠结的,指针数组 和 数组 总是不能区别开来,最初很痛苦写好的,编译没有通过, 把这两个东西混起来,对于指针就是有一种莫名的不知道。很早xwc就鼓励我去写了,但是一直害怕麻烦就不敢尝试, 这是一个不好的毛病,为了不能让cdd 的苦心白费,我决定要学会邻接表 其实这道题目我很早就写了,当时MLE,就不知道怎么改,今天一开始用邻接写的也是同样的毛病 真不知怎么去原创 2010-07-12 18:51:00 · 728 阅读 · 0 评论 -
hdu 3191 How Many Paths Are There(次短路) 很纠结题目。。。
<br />/* 对于这个题目我又该做何解释,Dijsk是过了的,可是优先队列 + BFS 就是Wrong,想不明白,xwc也改不出来 渐渐的觉得我就是一个悲剧,为何总是会出现那么离奇的事情呢?开始对自己无语了,一下几乎完全是XWC的代码, 因为我实在在自己写的找不出错误。何也??求最短路和比最短路长一的路的总条数.解法一、A*求第K短路,把前面K条路都求出来,象pku 2449 ,但是据说这个题的最后答案超过10^8,把路全部找出来肯定会爆priority_queue解法二原创 2010-07-12 11:03:00 · 1107 阅读 · 6 评论 -
Here We Go(relians) Again hdu 2722
/* 题目其实很简单,只是题目太长了,看懂有点不容易,最郁闷的是以开始就看懂了的, 只是2520/8 = 290 了,结果导致自己看懂的想法彻底崩溃,于是就在纠结中挣扎,痛苦ing。。 没想到这么弱智的毛病也犯 题目大致意思从起点到终点找一条花费时间最少的路,并输出(blips其实就是时间) 每条路的距离是2520 (是1 到 9的最小公倍数 可以不管的), 给你两点之间最大速度 P 两点的时间 t = 2520 / p;注意 p = 0的是,两点为断路,接下来就是构图共有 v =原创 2010-07-05 17:26:00 · 585 阅读 · 0 评论 -
Minimum Transport Cost hdu 1385(最短路 + 路径保存 + stack)
<br />/*<br /> 突然发现hdu的oj数据很强大,在zoj可以过的代码,在hoj就wrong 开始让我有点纳闷<br /> 题目很简单就是路劲的保存有点麻烦,最麻烦的是字典序那个<br /> 这几天题目虽然做的很少,而且所有的代码基本都是自己一个一敲出来的,很少一出错就baidu之类的<br /> 鉴戒是要有的,可是。。。。这个暑假只AC<br />*/<br />#include <iostream><br />#include <cstdio><br />#include <queue><b原创 2010-07-03 11:11:00 · 689 阅读 · 0 评论 -
hdu 2680Choose the best route 最短路(加入一个0点) BFS + priority——queue
<br />/*<br /> 题目很简单就是求最短路,其实跟hdu 2066差不多的<br /> 加入一个0点,把kiki能到的s点与0点相连,map[0][p] = 0;<br /> 接下来就是很简单的求最短路,注意这个是有向图<br />*/<br />#include <iostream>//2566318 2010-07-02 15:15:37 Accepted 2680 234MS 4252K 1410 B C++ 悔惜晟 <br />#include <cstdio><br />#include原创 2010-07-02 15:23:00 · 388 阅读 · 0 评论 -
hdu Trucking 2962 Dijs + 二分 BFS+ priority——queue SPAF + 邻接表
#include //00445446 2010-07-02 23:36:36 Accepted 1011 765 MS 8156 KB Visual C++ 悔惜晟 #include #include #include #include using namespace std;const int MAX = 0x3fffffff;const int N = 1005;int high[N][N];int cost[N][N];int dis[N];//int pat[N];bool hash[N];int原创 2010-07-02 23:42:00 · 538 阅读 · 0 评论 -
Arbitrage hdu 1217 最长路Floyd
<br />/*<br /> 一开始题目没有看清楚,题目求的是最长路,而不是最短路 <br /> 注释的代码是错的,题目要看清楚 <br />*/<br /><br />#include <iostream>//2566050 2010-07-02 12:58:09 Accepted 1217 31MS 296K 1755 B C++ 悔惜晟 <br />#include <queue><br />#include <cstdio><br />#include <map><br />#include <st原创 2010-07-02 13:14:00 · 559 阅读 · 0 评论 -
Bus System hdu 1690 (最短路 + long long int 处理)
/* 这个题目很简单,只是数据比较大所以用long long int ,一开始没有注意这个,以为是自己的BFS写错了,后来又用了 Floyd写还是错了。错了很多回的时候终于AC,多亏了xwc在回来的路上提醒了下,回来的时候灵感一来就过了 跟着他真的学到了很多,但是我很多细节的地方还是非常需要注意的,这个暑假一直在继续。。。 在审视题目的时候一定要注意数据的范围 求很多两点的最短路的时候Floyd效率高*/#include <iostream>#include <queue原创 2010-07-05 13:01:00 · 490 阅读 · 0 评论 -
hdu 1596 find the safest road(priority_queue )
<br />/*<br /> 这个题目稀里糊涂地就过了,是zhc说那种方法可以过,结果真的AC<br /> 但是想想感觉是可以的,每次去最大的进行更新,有点像Dijsk的,只是Dijsk 是每次去最小进行更新<br /> 可能是由于是小于1的小数吧<br /> 可是课件上的提示感觉就是用不起来的<br /> 用Floyd 超时了。。。<br />*/<br />#include <iostream>//2568534 2010-07-03 23:55:15 Accepted 1596 984MS 6880K原创 2010-07-04 00:08:00 · 472 阅读 · 0 评论 -
hdu 2112 HDU Today(map hash)
<br />/*<br /> 今天终于把这个题目过了,原来是起始点忘记了hash<br /> 虽然浪费了很多的时间,但是还是有收获的,至少map hash会了一点<br /> 做题目真的要思考全面,不能有一点错误的,特别是ACM,伟大的教训<br />*/<br />#include <iostream>//2563669 2010-06-30 19:18:23 Accepted 2112 2062MS 4296K 1680 B C++ 悔惜晟 <br />#include <map><br />#inc原创 2010-06-30 21:12:00 · 566 阅读 · 0 评论 -
hdu 1874 (最短路)
<br />/*<br /> 同样的代码稍微修改下交2112 就是错的,为何最近总是碰到这么奇怪的事情??<br /> 第一次写map hash <br />*/<br />#include <iostream>//2563607 2010-06-30 18:13:26 Accepted 1874 46MS 4292K 1720 B C++ 悔惜晟 <br />#include <map><br />#include <cstdio><br />#include <string><br />using na原创 2010-06-30 18:17:00 · 416 阅读 · 0 评论 -
zju 2870
<br />/*<br /> 2870. The K-th City <br />--------------------------------------------------------------------------------<br />Time Limit: 1.0 Seconds Memory Limit: 65536K<br />Total Runs: 2104 Accepted Runs: 753<br />--------------------------------原创 2010-06-29 10:36:00 · 516 阅读 · 0 评论 -
1142 hdu (最短路 + DFS)
<br />#include <iostream>//2564308 2010-07-01 11:08:17 Accepted 1142 109MS 4192K 1557 B C++ 悔惜晟 <br />#include <cstdio><br />#include <cstring><br />using namespace std;<br />const int N = 1005;<br />int cost[N][N];<br />int dis[N];<br />int count[N];<br /原创 2010-07-01 11:14:00 · 433 阅读 · 0 评论 -
hdu 2066 一个人的旅行(超级纠结)终于AC (用邻接表写了一个)
/* 这是学了Dijsk 最初写的代码,一开始一直错。就是找不到原因 连小wc也没有看出,t应该研究了好久,终于让我意识到自己写代码是多么粗心 值得收藏的代码,当做一个惨痛的教训*/ #include#include#includeusing namespace std;const int MAX = 0x7ffffff;const int Ty = 1005;int cost[Ty][Ty];int dis[Ty];bool hash[Ty];int n, dd[Ty], d;/*void Floyd(i原创 2010-06-30 09:34:00 · 732 阅读 · 0 评论 -
PKU I Wanna Go Home 3767 Dijsktra 优先队列 + BFS
/*I Wanna Go HomeTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 1134 Accepted: 468 DescriptionThe country is facing a terrible civil war----cities in the country are divided into two parts supporting different leaders. As a merchant, Mr. M do原创 2010-06-29 14:31:00 · 480 阅读 · 0 评论 -
hdu 2544 最短路 (邻接表)
#include#include#includeusing namespace std;int cost[105][105];int n;int dis[105];bool hash[105];const int MAX = 0x7fffffff;void Dijkstra(){ int i, j, k; memset(hash, false, sizeof(hash)); hash[1] = true; for(i = 2; i { int s = MAX; int t = 1; for(j =原创 2010-06-29 16:56:00 · 501 阅读 · 0 评论 -
hdu 1384 Intervals 差分约束 + Bellman(附SPAF)
<br />/* 那么如果在一个未知数定死的情况下,要求其它所有未知数的最小值怎么办? 只要反过来求最长路径就可以了。最长路径中的三角不等式与最短路径中相反: d(v) >= d(u) + w(u, v) 也就是 d(v) - d(u) >= w(u, v) 很丑的代码,有很多事参考了的,对于这个差分约束还不是很懂的*/#include <iostream>//2601120 2010-07-13 21:34:22 Accepted 1384 312MS 964K 1268 B原创 2010-07-14 22:35:00 · 945 阅读 · 0 评论