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,程中能够买一个鸡腿,然后到后面卖 ...
随机推荐
- MySQL闪回原理与实战
本文将介绍闪回原理,给出笔者的实战经验,并对现存的闪回工具作比较. DBA或开发人员,有时会误删或者误更新数据,如果是线上环境并且影响较大,就需要能快速回滚.传统恢复方法是利用备份重搭实例,再应用去除 ...
- Flood it 游戏
致敬HDU4127做的一个小游戏(数据结构大作业没东西写就搞这个了QAQ). 游戏截图(当然上交版本就没这么暴力拉): GUI界面选用的是Qt,由于之前没有接触过相关的东西,入门Qt花了不少时间. 大 ...
- [UWP小白日记-10]程序启动屏(ios解锁既视感)
讲一下 微软爸爸的开发者大会2016又暴了个表达式动画和Windows.UI.Composition的API,好叼的样子. 官方示例库GitHub 目前是懵逼状态,好复杂.脑细胞已经在地府排队了. ( ...
- CentOS 7安装nginx
CentOS 7安装nginx 参考网上其他文章做的 安装Nginx 我们从nginx官方的RPM源来安装一个预构建的稳定版本的nginx包. rpm --import http://nginx.or ...
- java中常遇到的问题
一.乱码问题 =========================================================================================== 方 ...
- form -转载于blfshiye
Form API 表单API 文件夹 1.概述 2.亮点 3.使用方法 4.表单元素 4.1 基本表单元素 4.2 定制表单元素 5.经常使用函数 5.1 add_action_buttons($c ...
- WPF中TextBox的PreviewMouseLeftButtonUp事件
当使用TextBox的PreviewMouseLeftButtonUp事件时(例如,鼠标点击进入TextBox时,清除当前的输入内容),会很意外地发现,这时候不论怎么点击都无法点击到其他控件,焦点一直 ...
- Python学习笔记——基础篇1【第三周】——set集合
set集合 不允许重复的元素出现(相当于特殊的列表) set 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 练习:寻找差异 # 数据库中原有 old_dic ...
- 一个简单sql注入的poc
最近在提高自己编程能力,拿一些实用的小工具练下.该脚本为python语言,主要涉及模块urllib,re. 功能:验证CmsEasy5.5爆账号密码 实验用源码:http://pan.baidu.co ...
- Gentoo双网卡同时启用上内外网
引言:本文配置网络通过 OpenRC/netifrc 方法(net.*scritps)配置. 外网网卡:enp3s4 内网网卡:enp2s0 外网地址(通过路由器) IP: 192.168.1.10 ...