hdu 1839 Delay Constrained Maximum Capacity Path
最短路+二分。
对容量进行二分,因为容量和时间是单调关系的,容量越多,能用的边越少,时间会不变或者增加。
因为直接暴力一个一个容量去算会TLE,所以采用二分。
#include<cstdio>
#include<vector>
#include<cstring>
#include<queue>
#include<map>
#include<algorithm>
using namespace std; const int maxn = ;
const int INF = 0x7FFFFFFF;
struct aaa { int u, v, cc, tt; }node[];
vector<aaa>ljb[maxn];
int c[], dist[maxn], flag[maxn];
int n, m, t; void spfa(int xianzhi)
{
int iii;
queue<int>Q;
memset(flag, , sizeof(flag));
for (iii = ; iii<=n; iii++) dist[iii] = INF;
dist[] = ; Q.push(); flag[] = ;
while (!Q.empty())
{
int h = Q.front(); Q.pop(); flag[h] = ;
for (iii = ; iii<ljb[h].size(); iii++)
{
aaa u = ljb[h][iii];
if (u.cc >= xianzhi)
{
if (u.u == h)
{
if (dist[u.u] + u.tt <= dist[u.v])
{
dist[u.v] = dist[u.u] + u.tt;
if (flag[u.v] == )
{
Q.push(u.v);
flag[u.v] = ;
}
}
}
else if (u.v == h)
{
if (dist[u.v] + u.tt <= dist[u.u])
{
dist[u.u] = dist[u.v] + u.tt;
if (flag[u.u] == )
{
Q.push(u.u);
flag[u.u] = ;
}
}
}
}
}
}
} int main()
{
int X;
scanf("%d", &X);
while (X--)
{
int i, j, u, v, tt;
scanf("%d%d%d", &n, &m, &t);
for (i = ; i <= n; i++) ljb[i].clear();
for (i = ; i <= m; i++) node[i].tt = INF;
for (i = ; i < m; i++)
{
scanf("%d%d%d%d", &u, &v, &c[i], &tt);
node[i].u = u; node[i].v = v;
node[i].cc = c[i]; node[i].tt = tt;
ljb[v].push_back(node[i]); ljb[u].push_back(node[i]);
}
sort(c, c + m);
int anss = -, xx, dd, zz;
xx = ; dd = m - ; zz = (xx + dd) / ;
while ()
{
spfa(c[zz]);
if (dist[n] <= t) { anss = zz; xx = zz + ; zz = (xx + dd) / ; }
else { dd = zz; zz = (xx + dd) / ; }
if (xx >= dd) break;
}
printf("%d\n", c[anss]);
}
return ;
}
hdu 1839 Delay Constrained Maximum Capacity Path的更多相关文章
- hdu 1839 Delay Constrained Maximum Capacity Path 二分/最短路
Delay Constrained Maximum Capacity Path Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu. ...
- hdu 1839 Delay Constrained Maximum Capacity Path(spfa+二分)
Delay Constrained Maximum Capacity Path Time Limit: 10000/10000 MS (Java/Others) Memory Limit: 65 ...
- 【启发式搜索】Codechef March Cook-Off 2018. Maximum Tree Path
有点像计蒜之道里的 京东的物流路径 题目描述 给定一棵 N 个节点的树,每个节点有一个正整数权值.记节点 i 的权值为 Ai.考虑节点 u 和 v 之间的一条简单路径,记 dist(u, v) 为其长 ...
- Codechef March Cook-Off 2018. Maximum Tree Path
目录 题意 解析 AC_code @(Codechef March Cook-Off 2018. Maximum Tree Path) 题意 给你一颗\(n(1e5)\)个点有边权有点权的树,\(Mi ...
- HDU 1839
http://acm.hdu.edu.cn/showproblem.php?pid=1839 题意:从1到n,要求时间小于等于T到达.每条边有一个容量,问最多能运多少货物. 分析:最多能运的货物取决于 ...
- UVA 10816 + HDU 1839 Dijstra + 二分 (待研究)
UVA 题意:两个绿洲之间是沙漠,沙漠的温度不同,告诉起点,终点,求使得从起点到终点的最高温度最小的路径,如果有多条,输出长度最短的路径: 思路:用最小费用(最短路径)最大流(最小温度)也能搞吧,但因 ...
- hdu 4002 Find the maximum
Find the maximum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Others) ...
- HDU 4002 Find the maximum(欧拉函数)
题目链接 猜了一个结论,题面跟欧拉函数有关系. import java.util.*; import java.math.*; import java.text.*; import java.io.* ...
- HDU 5052 Yaoge’s maximum profit 光秃秃的树链拆分 2014 ACM/ICPC Asia Regional Shanghai Online
意甲冠军: 特定n小点的树权. 以下n每一行给出了正确的一点点来表达一个销售点每只鸡价格的格 以下n-1行给出了树的侧 以下Q操作 Q行 u, v, val 从u走v,程中能够买一个鸡腿,然后到后面卖 ...
随机推荐
- C语言之形参和实参
一 形参与实参 1).定义 形参:形式参数. 就是定义函数的时候,写在函数名小括号后面的参数叫形参 实参:实际参数. 就是调用函数的时候,调用函数时写在函数名小括号后面的参数就叫实参 2).注意项 a ...
- 浅谈 Linux
1969年,美国贝尔实验室的肯-汤普森在DEC PDP-7机器上开发出了UNIX系统. 1971年,肯-汤普森的同事丹尼斯-里奇发明了C语言:1973年,UNIX系统的绝大部分源 ...
- ubuntu 服务版安装简易说明
安装基本环境 1.ubuntu 下载 下载地址:http://releases.ubuntu.com/14.04.4/ 2.安装virtualBox 直接在软件管家中下载即可 3.安装ubuntu 注 ...
- mysql解压版的配置安装
先在CMD进入编辑筐,用管理员身份运行 切换到mysql的解压目录的bin目录下并输入mysqld -install 这个时候启动服务, 发现出错!!! 检查这两个文件 这里的路径一定要核对 再次启动 ...
- smbaclient
在linux中通过smbaclient获取windows的共享文件 列出windows的共享目录 $ smbclient -L .xxx -U administrator%password 进入指定共 ...
- Tweak 中系统方法写入文件到根目录下面失败
Tweak 中系统方法写入文件到根目录下面失败 失败原因: Error Domain=NSCocoaErrorDomain Code=513 "The operation couldn’t ...
- 在代理中托管特殊方法的python代码实现
任务简单的介绍是: 在新风格对象模型中,Python操作其实是在类中查找特殊方法的(经典对象是在实例中进行操作的),现在需要将一些新风格的实例包装到代理中,,此代理可以选择将一些特殊的方法委托给内部的 ...
- Linux scp命令
语法 scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P p ...
- schemes-universalLink-share_IOS-android-WeChat-chunleiDemo
schemes-universalLink-share_IOS-android-WeChat-chunleiDemo The mobile terminal share page start APP ...
- November 12th 2016 Week 46th Saturday
Never love anyone who treats you like you are ordinary. 请爱那些爱你的人. Don't waste your limited energy on ...