最短路&&差分约束
morejarphone
这个作者很懒,什么都没留下…
展开
-
HDU5294(最短路,最大流)
题意是给一个n点m边的无向图,求最少去掉多少边使得最短路不存在,和最短路存在的情况下最多去掉多少边。把所有最短路上的边搞进来,流量为1跑最大流,去掉多少边只要搞个DP就能找到最短路图上得最短的路,用m去减就行。因为n坑点是有重边。#include #include #include #include #include #include #include using n原创 2015-10-06 14:49:55 · 530 阅读 · 0 评论 -
POJ 1556 (平面几何 最短路)
题目链接:点击这里题意:给出一个图, 求从起点走到终点的最短路.格子比较少, 直接把所有的格子坐标都扔进数组里然后暴力枚举两个点之间有没有线段挡着, 用距离建图跑最短路.#include <cstdio>#include <cmath>#include <algorithm>#include <iostream>#include <vector>#include <queue>#incl原创 2016-06-23 00:12:07 · 312 阅读 · 0 评论 -
HDU 1531 (差分约束)
题目链接:点击这里题意: 问是否存在长度为n的序列满足m个条件. 每个条件描述某一段子序列和大于或者小于k.转化前缀: su−sv−1<ks_u-s_{v-1}< k或者su−sv−1>ks_u-s_{v-1}>k, 因为都是整数, 把k用k-1替换改成≤\leq和≥\geq, 然后就是差分式子了. 可以不用加超级源点, 因为关心的是负环是否存在, 所以初始把每一个点都加近队列就好了.#includ原创 2016-07-06 22:40:21 · 693 阅读 · 0 评论 -
HDU 3666 (差分约束)
题目链接:点击这里题意: 给出一个矩阵, 问是否存在两个序列a1,a2...ana_1, a_2...a_n和b1,b2...bmb_1,b_2...b_m使得ai×ci,j/bj∈[L,U]a_i\times c_{i,j}/b_j\in[L,U].整理一下条件就是要判断是否存在两个数列使得f(x)={ai×ci,j≤U×bjL×bj≤ai×ci,j f(x)=\left\{\begin{ali原创 2016-07-06 16:09:52 · 434 阅读 · 0 评论 -
HDU 1384 (差分约束)
题目链接:点击这里题意: 求一个最小size的集合, 使得满足n个条件, 每个条件描述在一个闭区间中至少有多少个元素在集合中.用tit_i表示[0,i-1]区间有多少个元素在集合中, 然后相当于要满足的条件有:f(x)={ta−tb+1≤−c0≤ti+1−ti≤1f(x)=\left\{\begin{aligned}t_a-t_{b+1}\leq -c \\0\leq t_{i+1}-t_i\原创 2016-07-03 12:03:29 · 300 阅读 · 0 评论 -
HDU 4568 (SPFA 状压DP)
题意:求从外界拿到所有宝藏并且出去的最小花费。先用k次SPFA求出每个宝藏到每个点的最短路径,然后dp(i,j)表示宝藏获得的状态为i,位置在j的最小花费,转移方程就是dp(i,j)=min {dp(i^(1坑点:并没有宝藏拿不到的情况不用考虑;注意-1的格子。#include #include #include #include #include #includ原创 2016-04-07 23:08:32 · 409 阅读 · 0 评论 -
NEU 1690 (最短路+LCA)
1690: Terrorists时间限制: 5 Sec 内存限制: 128 MB提交: 11 解决: 3[提交][状态][讨论版]题目描述Terrorists! There are terrorists everywhere!!! I was shouting out loud after I had watched a few newsreports abou原创 2016-03-23 17:43:35 · 517 阅读 · 0 评论 -
HDU 4849 (最短路 水~)
除了校赛,还有什么途径可以申请加入ACM校队? Wow! Such City!Time Limit: 15000/8000 MS (Java/Others) Memory Limit: 102400/102400 K (Java/Others)Total Submission(s): 1453 Accepted Submission(s): 500原创 2016-04-03 00:17:48 · 496 阅读 · 0 评论 -
codeforces 601A (最短路)
本来很水的题目做的时候居然卡了题意被卡掉了~题意是n个城市之间任意两个城市间要么有火车线路要么有汽车线路,要从1出发到n,而且火车和汽车不能同时到达一个城市,问两者都到达的最短时间。肯定有一种车可以从1直接到达n,并且这样肯定是最优的判断另一种能不能到达n就行了。#include using namespace std;#define maxn 411#define INF 11原创 2015-11-25 11:05:41 · 893 阅读 · 0 评论 -
HDU5521(最短路)
ICPC沈阳站M题,对于每一个集合新建一个点,集合里面每个点到这个点的代价是ti,这个点到集合的每个点代价是0,从1和n出发跑两次最短路就行了。#include using namespace std;#define maxn 4111111#define maxm 21111111#define INF 11111111111111111struct node { int原创 2015-10-31 21:46:53 · 440 阅读 · 0 评论 -
UESTC OJ1220(最短路)
南阳CCPC的F题,题意是有m个战场,n个小镇,曹操可以在第i个小镇调人到x[i]战场,每个人花费c[i]金钱,同时袁绍也会在第i个小镇调同等数量的人到y[i]战场。每个战场有重要程度分别为0,1,2 。2表示战场上曹操的人必须比袁绍多,1表示曹操的人必须大于等于袁绍,0表示没有限制。问满足条件曹操必须至少花费多少。首先建模,只需要保证每个重要战场曹操的人数多一个就行,那么对于每个小镇,从y[原创 2015-10-26 23:42:48 · 613 阅读 · 0 评论 -
HDU4460(最短路)
题意很简单,求所有两点间最短路的最大值。暴力n次spfa。#include #include #include #include #include #include #include #include using namespace std;#define maxn 1111#define maxm 21111#define INF 111111111struct原创 2015-10-11 21:24:52 · 629 阅读 · 0 评论 -
POJ 3621 (最优比率环 二分+SPFA)
题目链接:点击这里题意:找出一个环, 最大化∑vi∑Ei\frac{\sum v_i}{\sum E_i}.假设答案是ans.那么有∑vi∑Ei=ans\frac{\sum v_i}{\sum E_i}=ans也就是∑vi−ans∑Ei=0\sum v_i-ans\sum E_i=0.因为是一个环,所以环上每个点都被算了两次,所以可以给每条边对应一个FiF_i表示边上两个节点权值和的一半,所以所求就原创 2016-11-08 15:32:59 · 447 阅读 · 0 评论