安亭网站建设建阳建设局网站

diannao/2026/1/23 11:12:16/文章来源:
安亭网站建设,建阳建设局网站,WordPress状态栏替换,网站导航包括之前那篇博客是在入门网络流时写的#xff0c;现在对网络流重新有了一定的理解。 1. 最大流 FF 增广思想 Ford–Fulkerson 增广#xff0c;核心即不断找增广路并增广。 dfs 实现 // FF brute #include bits/stdc.h #define int long longusing namespace std;in…之前那篇博客是在入门网络流时写的现在对网络流重新有了一定的理解。 1. 最大流 FF 增广思想 Ford–Fulkerson 增广核心即不断找增广路并增广。 dfs 实现 // FF brute #include bits/stdc.h #define int long longusing namespace std;int n, m, s, t, r[205][205], ans;bool vis[205]; int dfs(int u, int sum) // sum流入 u 的流量 {if(sum 0 or u t) return sum;vis[u] true;int flow 0;for(int i1; in; i){if(!vis[i] and r[u][i] 0){//找 u 到 t 路上的最小限制并增广int d dfs(i, min(sum, r[u][i]));r[u][i] - d, r[i][u] d;flow d, sum - d;}}return flow; }signed main() {cin n m s t;for(int i1; im; i){int u, v, w;cin u v w;r[u][v] w;}int d;while(d dfs(s, 1e9)) {memset(vis, 0, sizeof(vis));ans d;}cout ans; }这种方法的复杂度与最大流 f f f 有关至多执行 f f f 轮 dfs时间复杂度 O ( n f ) O(nf) O(nf)。 bfs 实现 / EK FF 增广的 bfs 实现也称 EK 算法。 // FF EK#include bits/stdc.h #define int long longusing namespace std;int n, m, s, t, r[205][205], ans, d[205], pre[205]; queue int q; bool bfs() {memset(d, 0, sizeof(d)); memset(pre, 0, sizeof(pre));d[s] 1, q.push(s); while(!q.empty()){int u q.front(); q.pop();for(int i1; in; i)if(d[i] 0 and r[u][i] 0)pre[i] u, d[i] d[u] 1, q.push(i);}return d[t]; }int augment() {int flow 1e9;for(int at; a!s; apre[a]) flow min(flow, r[pre[a]][a]);for(int at; a!s; apre[a]) r[pre[a]][a] - flow, r[a][pre[a]] flow;return flow; }signed main() {cin n m s t;for(int i1; im; i){int u, v, w;cin u v w;r[u][v] w;}while(bfs()) ans augment();cout ans; }EK 算法的时间复杂度是 O ( n m 2 ) O(nm^2) O(nm2)。 证明每条边至多做 n 2 \dfrac n 2 2n​ 次增广路上的关键边。 OI-wiki Dinic 通过 bfs 对图分层标记每次 dfs 只访问下一层的结点。 同时加上当前弧优化即不重复访问满流边维护第一条有必要尝试的边。 // dinic#include bits/stdc.h #define int long longusing namespace std;struct Edge{int nxt, to, r; }e[10005];int tot 1, head[205]; void add_edge(int u, int v, int w) {e[tot] {head[u], v, w};head[u] tot; }int n, m, s, t, ans, d[205], cur[205];queue int q; bool bfs() {memset(d, 0, sizeof(d)); d[s] 1, q.push(s); while(!q.empty()){int u q.front(); q.pop();for(int ihead[u]; i; ie[i].nxt){int v e[i].to;if(d[v] 0 and e[i].r 0)d[v] d[u] 1, q.push(v);}}return d[t]; }int dfs(int u, int sum) {if(sum 0 or u t) return sum;int flow 0;for(int icur[u]; i; ie[i].nxt){cur[u] i;int v e[i].to;if(d[v] d[u] 1 and e[i].r 0){int d dfs(v, min(sum, e[i].r));e[i].r - d, e[i^1].r d;flow d, sum - d;}}return flow; }signed main() {cin n m s t;for(int i1; im; i){int u, v, w;cin u v w;add_edge(u, v, w);add_edge(v, u, 0);}while(bfs()) {for(int i1; in; i) cur[i] head[i];ans dfs(s, 1e9);}cout ans; } 2. 二分图最大匹配 二分图对于 G ( V , E ) G(V,E) G(V,E)分成两个点集 V 1 , V 2 V1,V2 V1,V2 对于所有的 ( u , v ) ∈ E (u,v) \in E (u,v)∈E 保证 u , v u,v u,v 属于不同点集。 容易发现二分图中不存在奇环。 二分图的匹配选定一些边这些边之间没有公共点。 建网络流模型即可通过虚拟源点和虚拟汇点限制 1 1 1。 如果要输出方案可以通过 f ( u , v ) c ( u , v ) f(u,v) c(u,v) f(u,v)c(u,v)判断。如果根据残量网络需要根据反向边的残量网络判断。 #include bits/stdc.h using namespace std;int n, m, s, t, r[105][105], ans, d[105], cur[105]; queue int q; bool bfs() {memset(d, 0, sizeof(d)); d[s] 1, q.push(s); while(!q.empty()){int u q.front(); q.pop();for(int i1; in2; i)if(d[i] 0 and r[u][i] 0)d[i] d[u] 1, q.push(i);}return d[t]; }int dfs(int u, int sum) {if(sum 0 or u t) return sum;int flow 0;for(int vcur[u]; vn2; v){cur[u] v;if(d[v] d[u] 1 and r[u][v] 0){int d dfs(v, min(sum, r[u][v]));r[u][v] - d, r[v][u] d;flow d, sum - d;}}return flow; }int main() {ios::sync_with_stdio(false);cin.tie(0);cin m n;s n1, t n2;while(1){int u, v;cin u v;if(u -1 and v -1) break;r[u][v] 1;}for(int i1; im; i) r[s][i] 1;for(int im1; in; i) r[i][t] 1;while(bfs()) {for(int i1; in2; i) cur[i] 1;ans dfs(s, 1e9);}cout ans \n;for(int u1; um; u){for(int vm1; vn; v){if(r[v][u]) cout u v \n;}} return 0; } 3. 最大权闭合子图 分成正点和负电把不选正点看作损失每一种割对应一种方案代表不选。 答案即为正收益减去最小损失即最小割根据最小割最大流即最大流。 具体可以看我之前的博客 浅谈网络流。 A. CF1783F Double Sort II 错排建图的套路。 先只考虑一个数列记 i i i 所在位置 p i p_i pi​将 i → p i i \to p_i i→pi​ 建边形成若干个环每次操作可以让环上少一个点因此最小操作次数为 n n n 减去环的数量。 如果从反面出发想最多能保留几个点可以不动省操作次数能保留的数量就是环的数量。 考虑两个数列对于一个环最多被省一个点。对于一个点最多被省一次。 按 i i i 所在的两个环建边跑二分图最大匹配即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

哪个网站可以做经济模拟题前端开发培训机构tuj

文章目录 一、Ided常用工具栏显示二、更改idea主题设置三、设置代码编辑器背景颜色为豆沙绿四、设置新项目 默认Jdk配置、maven配置1、settings for new projects2、structre for new projects 五、修改代码中注释的字体颜色六、设置编辑器字体大小七、文件编码的设置(可以设置…

seo兼职网智能网站推广优化

URI Uniform Resource Identifier 同一资源标识符 以特定语法标识一个资源的字符串 绝对URI:URI模式模式特有部分 scheme:scheme-specific-part scheme分为: data file本地文件系统 ftp http telnet urn 统一资源名 scheme-specific-part为&am…

怎样做网站的当前位置栏小程序app开发多少钱

目录 一,针对问题二,下载1,github里面下载FastGitHub2,博客上传了下载资源 三,安装使用点击执行文件即可 一,针对问题 当使用github很慢,或者根本打不开的时候,就可以使用该工具 …

站长工具网站备案百度网址收录入口

http://blog.csdn.net/charlesprince/article/details/5924376 TDI FILTER 过滤驱动的功能一般用来进行整个系统中的所有网络流量的分析,记录和管理,可以实现非常强大的管理功能,这里就将讨论它的设计架构,和具体实现的方法。  …

如何对网站的图片做cdn免费软件加速器

找到一个可靠的步骤,点开链接:http://blog.csdn.net/kevindr/article/details/22154323

做封面的软件ps下载网站iis的网站登录没反应

个人主页:Lei宝啊 愿所有美好如期而遇 目录 你是否听过Linux下一切皆文件? 在哪里我们体悟到了Linux下一切皆文件? 文件是什么? 在哪里体悟到的? 常见疑惑 怎么办到的Linux下一切皆文件? 我们抛出…

怎么看网站被降权征婚网站开发

算法-快速幂 时间复杂度 O(logk) //求 m^k mod p int qmul(int m,int k,int p) {int res1%p;while(k){if(k&1){res*m;res%p;}m*m;m%p;k>>1;}return res; }

用html5做网站的优点建筑工程公司有哪些岗位

1、取得控制台应用程序的根目录方法 方法1、Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径 方法2、AppDomain.CurrentDomain.BaseDirectory 获取基目录,它由程序集冲突解决程序用来探测程序集 2、取得Web应用程序的根目录方法 方法1、HttpRun…

西安 网站建设 培训班wordpress全站伪静态

Lua 是一个功能强大、高效、轻量级、可嵌入的脚本语言。它支持程序编程、面向对象程序设计、函数式编程、数据驱动编程和数据描述。 Lua的官方网站上只提供了源码,需要使用Make进行编译,具体的编译方法为 curl -R -O http://www.lua.org/ftp/lua-5.4.6.…

网站如何做地面推广企航网络推广

1 必须修改端口号 port 323422 2 必须设置密码,并且有一定的复杂度 requirepass dske#123 3 绑定bind ip bind 127.0.0.1 4 使用无登录权限的用户运行redis 配置文件路径 /www/server/redis/redis.conf 一般都是安装文件里 如果忘记密码和端口号也可以去配置文件…

做网站备案是什么意思杭州公积金网站查询系统

1.电子商务最重要的是( ) A.商务 B.网站 C.货物 D.信息技术 正确 正确答案:左边查询 学生答案:A 2.目前菜鸟网络依赖大数据和云计算已实现了哪些功能( ) A.自动化仓库 B.智能发货 C.物流云加速 D.以上都正确…

班级网站怎么做自己做网站怎么让字体居中

文章目录 Spring Security OAuth2如何自定义返回的 Token 信息定制不透明令牌的信息Springsecurity-oauth2之TokenEndPoint参考Spring Security OAuth2如何自定义返回的 Token 信息 Spring Boot+OAuth2,如何自定义返回的 Token 信息? 参考URL: https://www.jianshu.com/p/b7…

北京公司响应式网站建设价位北京品牌建设网站公司

作者:老齐对于初学Python者,除了看书(《跟老齐学Python:轻松入门》或者《Python大学实用教程》,均为电子工业出版社出版)、或者看视频(网易云课堂、CSDN上均有老齐的视频课程),还要进行专题性总结。比如本文&#xff0…

做产品推广得网站网站建设 蔬菜配送

明理信息科技知识付费saas租户平台 在当今的知识付费时代,我们面临着一个重要的问题:如何从众多的知识付费平台中选择适合自己的平台?本文将为您提供一些实用的建议,帮助您做出正确的选择。 首先,我们需要了解自己的…

实施网站推广的最终目的太湖网站建设

1:ARPG类型游戏 2:MMORPG 3:MOBA 4:卡牌类 5:棋盘类 转载于:https://www.cnblogs.com/like-minded/p/8297718.html

自己做的网站加载不出验证码网站和微信同步建设

1.关于MITK: MITK的全称是”The Medical Imaging Interaction Toolkit”。它是一款开源的交互式医学图像处理软件开发和应用平台。MITK将ITK和VTK整合为一个应用框架。该软件由德国一个研究室开发。官网地址为:http://mitk.org/wiki/MITK 。 与MITK同名…

建网站代理最近发生的热点事件

作为一名资深记者,我始终关注并报道科技如何助力特殊群体克服生活挑战的创新实践。近期,我有幸深入了解了一款专为盲人设计的辅助应用叫做蝙蝠避障,它以实时避障系统为核心,为视障人士独自出行提供了强有力的支持,悄然…

网站快速注册网站开发流程的8个步骤

首先写在最前面,MyCAT1.4的alpha版本已经发布了,这里面修复了不少的bug,也完善了一细节,之前两篇博客已经做了一些修改---------------------------------------------------------------------------------这才是本体~----------…

企业网站建设可行性分析 技能训练公司logo查询网站

2019千锋好程序员全新Python教程,深入浅出的讲解Python语言的基础语法,注重基本编程能力训练,深入解析面向对象思想,数据类型和变量、运算符、流程控制、函数、面向对象、模块和包、生成器和迭代器。教程列表:千锋Pyth…

网站百度地图提交H5平台网站建设

1.质量属性效用树 1.主要关注性能,可用性,安全性和可修改性(升级)进行分析 2.架构风格 2.1.分类 1. 解释器(interpreter):灵活性最高,建模为有向无环图,采用工作流方…