[ZJOI2010]网络扩容,P2604,最小费用最大流

本文深入探讨了最大流算法与最小费用流(MCMF)算法的应用,通过实例讲解了如何在残余网络中寻找最优路径进行扩容,以实现资源的有效利用。文章详细解释了算法步骤,包括初始化网络、构建超级源点、使用SPFA算法进行路径查找及费用更新等关键环节。

正题

      这一题想了我很久,结果发现很智障。

      原来是一个裸题啊。

      先跑最大流,然后剩下的是一个残余网络,容易知道如果扩容,肯定在残余网络里面找路径,因为如果不在残余网络里面找路径,那么肯定就会多算,就相当于有流量不用。

       在残余网络里面连边,流量无限,费用是扩容费用。

        建立一个超级源点,向1点建一条边,流量为扩容大小,费用为0。跑一边MCMF即可。

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<queue>
using namespace std;

int n,m,k;
struct edge{
	int x,y,next,c,cos;
}s[50010];
int first[1010],d[1010],mmin[1010],last[1010],w[5010];
bool tf[1010];
int begin,end;
queue<int> f;
int len=1;

void ins(int x,int y,int c,int cos){
	len++;s[len]=(edge){x,y,first[x],c,cos};first[x]=len;
	len++;s[len]=(edge){y,x,first[y],0,-cos};first[y]=len;
}

bool SPFA(int&flow,int&cost){
	memset(tf,false,sizeof(tf));tf[begin]=true;
	memset(d,63,sizeof(d));d[begin]=0;
	mmin[begin]=1e9;
	f.push(begin);
	while(!f.empty()){
		int x=f.front();f.pop();tf[x]=false;
		for(int i=first[x];i!=0;i=s[i].next){
			int y=s[i].y;
			if(d[y]>d[x]+s[i].cos && s[i].c>0){
				d[y]=d[x]+s[i].cos;mmin[y]=min(mmin[x],s[i].c);last[y]=i;
				if(!tf[y]){
					tf[y]=true;
					f.push(y);
				}
			}
		}
	}
	if(d[end]==d[end+1]) return false;
	flow+=mmin[end];
	cost+=mmin[end]*d[end];
	int now=end;
	while(now!=begin){
		s[last[now]].c-=mmin[end];s[last[now]^1].c+=mmin[end];
		now=s[last[now]].x;
	}
	return true;
}

void MCMF(int type){
	int flow=0,cost=0;
	while(SPFA(flow,cost));
	if(type==1) printf("%d ",flow);
	else printf("%d",cost);
}

int main(){
	scanf("%d %d %d",&n,&m,&k);
	begin=1,end=n;
	int x,y,c;
	for(int i=1;i<=m;i++){
		scanf("%d %d %d %d",&x,&y,&c,&w[i]);
		ins(x,y,c,0);
	}
	MCMF(1);
	ins(begin=0,1,k,0);
	for(int i=1;i<=m;i++) ins(s[2*i].x,s[2*i].y,1e9,w[i]);
	MCMF(2);
}

 

在自媒体领域,内容生产效率与作品专业水准日益成为从业者的核心关切。近期推出的Coze工作流集成方案,为内容生产者构建了一套系统化、模块化的创作支持体系。该方案通过预先设计的流程模块,贯穿选题构思、素材整理、文本撰写、视觉编排及渠道分发的完整周期,显著增强了自媒体工作的规范性与产出速率。 经过多轮实践验证,这些标准化流程不仅精简了操作步骤,减少了机械性任务的比重,还借助统一的操作框架有效控制了人为失误。由此,创作者得以将主要资源集中于内容创新与深度拓展,而非消耗于日常执行事务。具体而言,在选题环节,系统依据实时舆情数据与受众偏好模型生成热点建议,辅助快速定位创作方向;在编辑阶段,则提供多套经过验证的版式方案与视觉组件,保障内容呈现兼具美学价值与阅读流畅性。 分发推广模块同样经过周密设计,整合了跨平台传播策略与效果监测工具,涵盖社交网络运营、搜索排序优化、定向推送等多重手段,旨在帮助内容突破单一渠道局限,实现更广泛的受众触达。 该集成方案在提供成熟模板的同时,保留了充分的定制空间,允许用户根据自身创作特性与阶段目标调整流程细节。这种“框架统一、细节可变”的设计哲学,兼顾了行业通用标准与个体工作习惯,提升了工具在不同应用场景中的适应性。 从行业视角观察,此方案的问世恰逢其时,回应了自媒体专业化进程中对于流程优化工具的迫切需求。其价值不仅体现在即时的效率提升,更在于构建了一个可持续迭代的创作支持生态。通过持续吸纳用户反馈与行业趋势,系统将不断演进,助力从业者保持与行业发展同步,实现创作质量与运营效能的双重进阶。 总体而言,这一工作流集成方案的引入,标志着自媒体创作方法向系统化、精细化方向的重要转变。它在提升作业效率的同时,通过结构化的工作方法强化了内容产出的专业度与可持续性,为从业者的职业化发展提供了坚实的方法论基础。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值