有上下界的网络流学习笔记

Chroma向量数据库实战:用Python快速搭建本地知识库(附中文诗词检索案例) 本文详细介绍了如何使用Chroma向量数据库和Python快速搭建本地知识库,并附有中文诗词检索的实战案例。通过解析核心概念、数据准备、向量化及智能检索实现,展示了Chroma在处理中文语义搜索时的轻量级与易用性,为开发者构建AI应用原型提供了实用指南。 阅读详情

前言

补坑补坑
还债还债
参考了liu_runda的

前置

上下界:即一条边存在必须流过的流量与至多流过的流量,分别称为上界和下界
流量守恒:即满足一个点的流入流量=流出流量
可行流:问一张图是否存在每个点满足流量守恒且满足上下界限制的流
将以上条件称为基本条件
称一条边 ( u , v , d o w n , u p ) (u,v,down,up) (u,v,down,up)为从 u u u到 v v v,流量下界为 d o w n down down,上界为 u p up up的边

核心姿势

先让每条边满足下界,再调整流量
新建附加流
满足若原流中流出>流入,则附加流中流入>流出
反之亦然

无源汇可行流

图中不存在源汇,求是否有循环往复并满足基本条件的流

新建超级源 S S SS SS,超级汇 T T TT TT
对于原图中的每个点 i i i,我们记 d [ i ] d[i] d[i]表示流入其的边的下界和减去其流出的边的下界和的差
若 d [ i ] < 0 d[i]<0 d[i]<0, i − > T T i->TT i−>TT连一条流量为 − d [ i ] -d[i] −d[i]的边
否则, S S − > i SS->i SS−>i连一条流量为 d [ i ] d[i] d[i]的边
上一条边保证了在附加流的过程中多流入来补足的流量有地方可以离开
后一条边保证了在附加流的过程中存在有流可以补足流出的流
称如上的边为附加边
对于一条边 ( u , v , d o w n , u p ) (u,v,down,up) (u,v,down,up),我们做如下操作
u − > v u->v u−>v连一条流量为 u p − d o w n up-down up−down的边
用于跑附加流

在新图中跑 S S − > T T SS->TT SS−>TT的最大流
若所有附加边均满流,则存在可行流
此时可行流中的边的流量为其流量下界加上他在新图中的流量

有源汇有上下界可行流

图中存在源汇,求是否有从源到汇满足基本条件的流

我们发现只有源和汇是不存在满足流量守恒的情况的
所以在图中加入一条汇到源的流量无穷的边,让其满足流量守恒
此时图变成了无源汇的
故套用上面的算法求可行流即可

upd:不写一下不知道细节是啥…
注意原来的源汇都需要做如上的过程
在建 I N F INF INF边之前做这个操作
就是连向 S S , T T SS,TT SS,TT的过程

可行流的流量是多少?
即为新建的汇到源的无穷边的流量

有源汇有上下界最大流

在如上的基础上满足流量最大
先套用第二个算法求一次可行流,并记录可行流的流量 s 1 s1 s1
此后将新建的汇流向源的边删除
跑一次从源到汇的最大流 s 2 s2 s2
则最大流流量为 s 1 + s 2 s1+s2 s1+s2

有源汇有上下界最小流

在满足第二个流的基础上满足流量最小
同样套用第二个算法求一次可行流,并记录可行流的流量 s 1 s1 s1
将新建的汇到源的边删除
此后跑一遍从汇到源的最大流 s 2 s2 s2
则最小流流量为 s 1 − s 2 s1-s2 s1−s2

还有一种更简单的写法,套用第二个算法的最后不加上汇到源的这条无限边。先跑一边 S S SS SS到 T T TT TT的最大流
跑完之后再将汇到源这条无限边加上,再跑一次从 S S SS SS到 T T TT TT的最大流
此时这条无限边的反向边的流量即为最小流

有源汇有上下界最小费用流

按第一个流的方法建图
不同的是
原图中的边的费用正常
附加边费用为0
跑 S S − > T T SS->TT SS−>TT最小费用流
则原图最小费用流为跑出的费用+原图中每条边的下界*其费用

用AI从0开始量化交易-制定学习计划安装学习环境 量化小白,利用AI从零开始学量化 阅读详情

相关推荐

Vivado工程备份实战:两种方法快速迁移Block Design(附路径避坑指南)

本文详细介绍了Vivado工程中Block Design(BD)备份与迁移的两种核心方法:文件夹直接复制法与TCL脚本生成法。针对FPGA工程师在项目迁移或团队协作时常见的IP丢失、路径报错等问题,提供了从原理到实战的操作指南与路径避坑策略,确保设计可复现与高效协作。

pz890123的博客 1311

上下界网络流

我们知道,仅有上界的网络流,可以通过bfs寻找增广路进行扩流从而找到最大流。但如果给每条边的流量加一个下界,我们应该怎么办呢?设边w的流量上界为sup,下界为inf一个思路是先把每条边下界需要流的inf流量流满,然后再给出sup-inf的边,代表可流可不流,这样,就可以在保证取到流量下界的同时不超出流量上界。那么我们具体该怎么实现呢?

Se_ren_di_pity的博客 993

PX4开发环境搭建(Ubuntu1804+QGC+Qt Creator )

文章目录前言一、安装环境二、PX4环境搭建1. 在虚拟机中安装Ubuntu2. 安装PX4环境(1)下载PX4源码:(2) 安装工具链(3) jMAVSim仿真(4) 编译验证三、安装QGC四、安装Qt Creator 前言 在这之前作者完全没接触过PX4,安装过程遇到了很多坑,而且每安装下载一个东西都要等好久,出现问题又要重新开始,前后折腾了四天才弄好,希望此文对大家有所帮助。 一、安装环境 ...

Beyonderwei的博客 9023

有上下界的网络流小结

1. 无源汇可行流 对于有下界的网络流,首先要想办法去掉下界,做法是把原图中的流量分成流b和f’,其中b的流量为原流量下界,f′=f−bf'=f-b。 虚拟一个源点s和一个汇点t,对每个点u,设D(u)=∑bin−∑boutD(u)=\sum_{}b_{in}-\sum_{}b_{out},若D(u)>0D(u)>0,从s连一条容量为D(u)的流到u,否则连一条容量为-D(u)的流到t。其实这个

Dizzz的博客 524

保姆级教程:手把手教你从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件(附网址规律总结)

本文提供从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件的详细教程,包括路径解析、版本号确定和下载命令示例。特别解析了GRCh37的特殊存储结构,并分享批量下载、文件校验等高级技巧,帮助生物信息学研究者高效获取基因组注释文件。

weixin_29289821的博客 204

FPGA实现PI控制

FPGA实现PI控制

m0_57319166的博客 3897

上下界网络流模型

前言 上下界网络流是指每条边的容量限制除了上线之外,还有一个下限。 5月10日更新:先放做法,原理日后再说 注意: 附加源和附加汇取名SS和TT是为了与源汇S和T相区别。 “边”和“弧”分别代指题目给定的有向图中的边,和自建网络中的边。 一. 无源汇上下界可行流 没有源点和汇点,因为流量下限的存在,网络中形成了一个封闭的循环流。 做法: 新建附加源SSSSSS,附加汇TTTTTT. 设节点u...

秋叶红于二月花 597

如何浏览与下载全球免费的地图高分辨率(亚米级)的遥感影像?

前言 如果你想使用商业卫星的高分辨遥感影像,一般价格昂贵。我们可以使用地图平台上免费的高分辨率数据。目前数据源很多,比如说google earth、天地图、四维地球、必应地图等等。这些影像统一有一个共同点就是:RGB三波段;Web地图瓦片服务。这意味着我们可以通过瓦片服务下载影像,但下载的影像只有三个波段,分别是 一.引言 二、可使用高分辨率的地图数据源 1.Google Earth影像 2.Esri World Image 3.天地图 4.必...

锐多宝的地理空间 2万+

上下界网络流模板

T1 无源汇可行流 LYOI156 #include &lt;bits/stdc++.h&gt; #define N 210 #define M 40010 #define INF INT_MAX using namespace std; int n,m,fir[N],nxt[M],to[M],flow[M],g[N],dis[N],q[N],lower[M],tot(1),s,t,e[M]...

Aqua blue 417

Win10 系统下VisualStudio2022 配置Open3D-0.18.0(C++)

Win10 系统下VisualStudio2022 配置Open3D-0.18.0

点云侠的博客 2657

Unreal从入门到精通之如何绘制用于VR的3DUI交互的手柄射线

之前我写过一篇文章《Unreal5从入门到精通之如何在VR中使用3DUI》,其中讲到使用WidgetComponent和3DUI进行交互。然而,这种方法存在一个问题:为了让射线可视化,我们需要勾选“调试/显示调试”,这样才能在手柄上看到代表其指向的一条红色射线。但最关键的问题是,这个显示调试信息的功能只属于Debug调试模式,也就是说,一旦将项目正式打包发布,这条射线辅助线就没有了。如下图所示:我就觉得Unreal官方真的是有点过分了,这不应该是最基本的功能么?难道我们VR要在Debug模式下发布?

TxNet 1612

有上下界的网络流

知识点系列之---有上下界的网络流

forever_dreams的博客 810

Nerf 训练自有数据

colmap相机位姿转为LLFF格式数据

zfjBIT的专栏 2309

有上下界的网络流 学习笔记

预备知识f(u,v)f(u,v)表示u->v这条边的实际流量 b(u,v)b(u,v)表示u->v这条边的流量下界 c(u,v)c(u,v)表示u->v这条边的流量上界 在一个无源汇的普通网络流图中,满足 0≤f(u,v)≤c(u,v)0\le f(u,v)\le c(u,v) ∑f(u,i)=∑f(i,v)\sum f(u,i)=\sum f(i,v) 分别称为流量限制条件和流量平衡条件

zyf2000 7707

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上下界网络流学习笔记

[学习笔记] 有上下界的网络流 ​ 为什么刚学网络流不久就要学这种东西啊, 我网络流二十四题还没写完呢... ​ 本文是在liu_runda的学习笔记的帮助下写出来的, 在这里先提前声明一下(本文中有很多引用)... ​ 在多篇别人的学习笔记的帮助和我自己的学习意愿下(其实是考试遇到这种题爆零后才去学习的), 我接触了一下有上下界的网络流, 略微对这种流法有所了解, 它大约分为以下几种: ​ 1....

weixin_30951231的博客 99

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【学习笔记】上下界网络流

一、前言 上课时,有些同学对算法的解释是错误的,好像不是非常清楚做法的原理(?),在此写一篇 blog 记录原理赠与自己与他人。 二、算法 1.无源汇上下界可行流 nnn 个点,mmm 条边,每条边 eee 有一个流量下界 lower(e)lower(e)lower(e) 和流量上界 upper(e)upper(e)upper(e),求一种可行方案使得在所有点满足流量平衡条件的前提下,所有边满足流量限制。 做法: 我们的网络流算法只能处理:源汇两点不要求流量守恒,边只有上届。 容易相当让每一条边都先流走一个

C2022lihan的博客 377

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

有上下界网络流 学习笔记

有上下界网络流 学习笔记 文章目录有上下界网络流 学习笔记前言例题模型构建无源汇可行流有源汇可行流有源汇最大流有源汇最小流后记 前言 (阅读本文章前请确保已经了解 最大流 有关内容) 众所周知,网络流是一种解决问题的有效手段。它凭借灵活的建模技巧、得天独厚的图论性质、高效的算法成为了OI的一把利器。有上下界网络流 这一技巧也为网络流的解题创造了更开阔的维界。 十分感谢 liu_runda 的博客有上下界的网络流学习笔记,让我学会了这个算法。 例题 主要有三个,代表了有上下界网络流的三种模型: LOJ#115

日居月诸的博客 395

有上下界网络流学习笔记

有上下界网络流学习笔记 1.有(无)源汇有上下界最小费用可行流:算法的核心思想是补流。先判断原图是否有源汇,若有则连边\(t \to s(\infty/0)\);随后新建超级源汇\(S\),\(T\);然后对于每一条边\(x \to y\),连边\(x \to y(high-low/w)\);接着对每一个点\(x\),计\(\delta\)为该点入边流量下界之和减去该点出边流量下界之和,...

146

有上下界的网络流--学习笔记

无源汇有上下界可行流 LOJ #115 无源汇有上下界可行流 题目描述 n个点,m条边,每条边 e 有一个流量下界 lower(e)\text{lower}(e)lower(e) 和流量上界 upper(e)\text{upper}(e)upper(e) ,求一种可行方案使得在所有点满足流量平衡条件的前提下,所有边满足流量限制。 输出格式 如果无解,输出一行 NO。 否则第一行输出 YES,之后 ...

niiick 228

[学习笔记]上下界网络流

有的时候,网络流建模要考虑某些边必须选择若干次,又不能多于若干次,而且不太容易转化成比较好的限制模型, 就简单粗暴地给每条边定一个流量的上下界,求在满足上下界的基础上的一些问题。 大概有以下几种。 基本思路都是先满足下界,再调整流量守恒,一边满足最优性。 无源汇上下界可行流 每条边的流量有上下界问是否存在一种可行方案 首先我们要保证每个点的流入流量等于流出流量如果存在一个可...

weixin_33699914的博客 90

上下界网络流及费用流学习笔记

前言 不错的文章: https://www.cnblogs.com/liu-runda/p/6262832.html https://www.cnblogs.com/leason-lyx/p/11144527.html 无源汇上下界可行流: 模型:一个网络,求出一个流,使得每条边的流量必须≥L\ge L≥L且≤R\le R≤R,每个点必须满足总流入量 = 总流出量 (流量守恒) (这个流的特点是...

FSYo 的博客 619

[上下界网络流]【学习笔记】

上下界网络流 前言 我花了几乎一个白天的时间来想为什么有源汇最大流求出的保证是原图的最大流...现在已经不想提这个东西了...简单记一下吧,乱七八糟的思考过程略去了 上下界网络流概述 网络流:满足容量限制和流量平衡 上下界网络流:同时有流量上界和流量下界 \[ \forall i \in V-\{s,t\},\ \sum_{(u,i)\in E}f(u,i) = \sum_{(i,v)\in ...

weixin_33834679的博客 95
上一篇: [bzoj4699][Dijkstra][线段树][并查集]树上的最短路
下一篇: [codeforces1019B][二分法求函数零点]The hat
Rose_max
博客等级 码龄10年 97粉丝 610原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值