luoguP1401 城市
https://www.luogu.org/problemnew/show/P1401
二分答案网络流判断是否可行即可
#include <bits/stdc++.h>
using namespace std;
template <typename T>
inline void read(T &f) {
f = 0; T fu = 1; char c = getchar();
while (c < '0' || c > '9') {if (c == '-') fu = -1; c = getchar();}
while (c >= '0' && c <= '9') {f = (f << 3) + (f << 1) + (c & 15); c = getchar();}
f *= fu;
}
const int N = 200 + 5, M = 4e4 + 5, INF = INT_MAX;
struct Edge {
int u, v, next, cap, flow;
}G[M << 1];
struct ele {
int u, v, val;
bool operator < (const ele A) const {return val < A.val;}
}p[M];
int head[N], nowhead[N], d[N];
int tot, n, m, t, S, T;
inline void addedge(int u, int v, int cap) {
G[++tot] = (Edge) {u, v, head[u], cap, 0}, head[u] = tot;
G[++tot] = (Edge) {v, u, head[v], cap, 0}, head[v] = tot;
}
int bfs() {
memset(d, 0, sizeof(d));
queue <int> q;
d[S] = 1; q.push(S);
while(!q.empty()) {
int u = q.front(); q.pop();
for(int i = head[u]; i; i = G[i].next) {
int v = G[i].v;
if(d[v] == 0 && G[i].cap > G[i].flow) {
d[v] = d[u] + 1;
q.push(v);
}
}
}
return d[T];
}
int dfs(int u, int Flow) {
if(u == T || Flow == 0) return Flow;
int flow = 0, f;
for(int &i = nowhead[u]; i; i = G[i].next) {
int v = G[i].v;
if(d[v] == d[u] + 1 && (f = dfs(v, min(Flow, G[i].cap - G[i].flow))) > 0) {
flow += f, Flow -= f;
G[i].flow += f, G[i ^ 1].flow -= f;
if(!Flow) break;
}
}
return flow;
}
int dinic() {
int ans = 0;
while(bfs()) {
for(int i = 1; i <= n; i++) nowhead[i] = head[i];
ans += dfs(S, INF);
}
return ans;
}
int main() {
read(n); read(m); read(t);
for(int i = 1; i <= m; i++) read(p[i].u), read(p[i].v), read(p[i].val);
sort(p + 1, p + m + 1);
int l = 1, r = m; S = 1; T = n;
while(l < r) {
int mid = (l + r) >> 1;
memset(head, 0, sizeof(head)); tot = 1;
for(int i = 1; i <= mid; i++) addedge(p[i].u, p[i].v, 1);
if(dinic() < t) l = mid + 1;
else r = mid;
}
printf("%d\n", p[l].val);
return 0;
}
luoguP1401 城市的更多相关文章
- luoguP1401 城市(二分答案+最大流)
题意 N(2<=n<=200)个城市,M(1<=m<=40000)条无向边,你要找T(1<=T<=200)条从城市1到城市N的路,使得最长的边的长度最小,边不能重复 ...
- 【开源】分享2011-2015年全国城市历史天气数据库【Sqlite+C#访问程序】
由于个人研究需要,需要采集天气历史数据,前一篇文章:C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),介绍了基本的采集思路和核心代码,经过1个星期的采集,历史数据库 ...
- 根据ip判断返回城市名称查询当地天气
<?phpheader("content-type:text/html;charset=utf-8");date_default_timezone_set("Asi ...
- 使用page object模式抓取几个主要城市的pm2.5并从小到大排序后写入txt文档
#coding=utf-8from time import sleepimport unittestfrom selenium import webdriverfrom selenium.webdri ...
- geolocation/ 百度地图api Geolocation 定位当前城市信息
根据当前所处位置 定位所在城市信息 <html> <head> <meta charset="UTF-8" /> <title>js ...
- h5手机端下拉选择城市
<!doctype html><html> <head> <meta http-equiv="Content-Type& ...
- BZOJ 2001: [Hnoi2010]City 城市建设
2001: [Hnoi2010]City 城市建设 Time Limit: 20 Sec Memory Limit: 162 MBSubmit: 1132 Solved: 555[Submit][ ...
- redis技巧--IP地址查询对应城市
场景: 根据IP地址判断用户所在地,虽然网上有好多篇了,但我记录一个一看就懂的,不用看超长文字再自己理解了. 我们有城市和IP地址段的对应关系,如: 上海: 202.127.0.0 ~ 202.127 ...
- 美团HD(5)-选择城市
DJSelectCityViewController.m #import "DJSelectCityViewController.h" #import "DJConsta ...
随机推荐
- python's twenty day for me 继承 和 super()方法
super(): 在单继承中就是单纯的寻找父类. 在多继承中就是根据子节点所在图 的mro顺序,找寻下一个类. 遇到多继承和super(): 对象.方法 1,找到这个对象对应的类. 2,将这个类的所有 ...
- 使用原生js自定义内置标签
使用原生js自定义内置标签 效果图 代码 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- 引用WebService出现错误
在引用WebService作为服务引用的时候,由于VS生成时生成了两个入口点,导致出现 引发的异常:“System.Windows.Markup.XamlParseException”(位于 Pres ...
- js取得前2位字符
<label id="ab">0</label> <script language="javascript"> url=&q ...
- 监控Mongo慢查询
监控Mongo慢查询 1. 使用mongostat监控MongoDB全局情况 mongostat是mongdb自带的状态检测工具,在命令行下使用.它会间隔固定时间获取MongoDB的当前运行状态,并输 ...
- 生成ssl脚本文件
read -p "Enter your domain [www.example.com]: " DOMAIN echo "Create server key...&quo ...
- java三元运算符详解
最近在带领实习生中遇到很多新手问与三元运算符有关的java题目,多数为代码结果题,少数为应用题.鉴于很多资料上对于java三元运算的讲解过于简单,网上的资料与题目也不是很完善,对于结果答案分析不一,故 ...
- QQ、邮箱、手机号 正则验证
邮箱:/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/ 手机号:/^(((13[0-9]{1})|(15[0-9]{1 ...
- dyld_decache&MesaSQLite
[dyld_decache] Starting from iPhone OS 3.1, the individual libraries files supplied by the system ar ...
- day63-webservice 01.cxf介绍
CXF功能就比较强了.CXF支持soap1.2.CXF和Spring整合的非常密切.它的配置文件基本就是Spring的配置文件了.CXF是要部署在服务器才能用的.CXF得放到Web容器里面去发布.CX ...