最短路
TommyTT
我擦,要挂科了。
展开
-
hdu 1690 Bus System,(最短路)
普通的最短路,只是建图稍微麻烦点。 最坑的地方是一定要用__int64存入数据。。。 下面的代码可以用G++过,把%I64d改成%lld可以用C++过。 #include #include #include #include #include using namespace std; const long long inf=0x3f3f3f3f3f3f3f3fLL; //4557430原创 2013-05-13 22:20:22 · 692 阅读 · 0 评论 -
hdu2923 Einbahnstrasse map+floyd最短路
题意啊,题意很重要!!N 第一个名字是拖车公司,后面的c个是破车的地方,所以有可能出现几个破车在同一个地方的。 而拖车一次只能拖一辆,所以要用一个数组记录下每个破车的位置。 就因为这,RE了我N次! 建图过程也挺麻烦,主要是字符串的处理 #include #include #include #include #include using namespace std; map m原创 2013-05-14 14:57:10 · 835 阅读 · 0 评论 -
poj 3662 二分最短路(建模与转化)
二分给出的p条边,把大于的都当做电信赠送的线路,小于等于的都当做农夫自己买的线路。 前者权值设为1,后者权值设为0,则最短路跑出来的结果和k值比较就知道是否满足,继续二分。 #include #include #include #include #include #include #include #include #include #include #include #include #in原创 2014-02-21 15:22:53 · 761 阅读 · 0 评论 -
poj 3255 Roadblocks
之前一直想写一下A*,K短路的模板,然后看到了这题,于是各种敲代码的欲望涌上来。 知道A*的人应该都知道可以用A*来求最短路,当终点节点第K次出队时,就是第K短路。 而A*的关键在于求估价函数,所以可以一遍反向SPFA求得终点到每个点的最短路,作为估价函数。【还是自己的模板比较好看】 #include #include #include #include #include #incl原创 2014-03-11 20:21:24 · 638 阅读 · 0 评论 -
HDU4370 0 or 1 神转换,最短路
题目可以转换为1-n的一条最短路,题目的限制,可以理解为n个结点,1的出度为1,n的入度为1,其他点出度等于入度,1代表选这条边,0代表不选,这样就相当于求1-n的最短路。。Orz 神转换。 但是问题在于,除了1-n的最短路,还有1种情况满足条件,那就是,1-1转一个环,n-n转一个环,这样也满足3条限制,所以答案必须是这两种情况的最小值。 #include #include #include原创 2014-03-15 21:56:34 · 985 阅读 · 0 评论 -
hdu 4063 Aircraft 计算几何+最短路
易知最短路一定是以圆心或者两圆交点作为中间点到达的。所以把这些点拿出来建图跑最短路就够了。 现在的问题就是,给定两个点,能否连边 add(a,b,dist(a,b)) 题目要求,ab线段必须完全在圆上,所以可以求出ab线段和所有圆的所有交点,对于任意相邻两个交点,它们必处于同一个圆内,否则不可达。点的编号用map就够了(一开始我以为double有精度问题无法map,用两个longlong保存然原创 2014-10-16 16:21:03 · 1164 阅读 · 0 评论