BZOJ2561 最小生成树

电竞护航系统成品搭建俱乐部点单小程序开发三角洲小程序搭建 阅读详情

传送门

题解:
暂时不想写题QWQ
显然,加入这条边后,权值比它大的边和比它小的边都不能让这两个点连通。求最小割即可。
蒟蒻只会isap。好久没打isap的板子了…又及这范围还真的过得去。

代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 20005
#define maxm 400005
#define INF 0x3f3f3f3f
using namespace std;
int n,m,s,t,l,d[maxn],vd[maxn],ans;
struct node { int v,cap; node *inv,*nxt; } edge[maxm],*head[maxn],*ncnt;
struct edg { int u,v,w; } a[maxm];
bool cmp(edg p,edg q) { return p.w<q.w; }
void addedge(int u,int v,int cap)
{
	ncnt++;
	ncnt->v=v,ncnt->cap=cap,ncnt->nxt=head[u];
	head[u]=ncnt;
}
void Addedge(int u,int v)
{
	addedge(u,v,1); addedge(v,u,1);
	ncnt->inv=ncnt-1,(ncnt-1)->inv=ncnt;
}
int aug(int u,int tot)
{
	int sum=0,mind=n-1;
	if(u==t) return tot;
	for(node *p=head[u];p;p=p->nxt)
		if(p->cap>0)
		{
			int v=p->v;
			if(d[u]==d[v]+1)
			{
				int delta=min(tot-sum,p->cap);
				delta=aug(v,delta);
				p->cap-=delta,p->inv->cap+=delta,sum+=delta;
				if(d[s]>=n) return sum;
				if(sum==tot) break;
			}
			mind=min(mind,d[v]);
		}
	if(!sum)
	{
		vd[d[u]]--;
		if(!vd[d[u]]) d[s]=n;
		d[u]=mind+1,vd[d[u]]++;
	}
	return sum;
}
void sap()
{
	memset(d,0,sizeof(d));
	memset(vd,0,sizeof(vd));
	vd[0]=n;
	while(d[s]<n) ans+=aug(s,INF);
}
int main()
{
	scanf("%d%d",&n,&m);
	ncnt=&edge[0];
	for(int i=1;i<=m;i++) scanf("%d%d%d",&a[i].u,&a[i].v,&a[i].w);
	sort(a+1,a+m+1,cmp);
	scanf("%d%d%d",&s,&t,&l);
	for(int i=1;i<=m&&a[i].w<l;i++) Addedge(a[i].u,a[i].v);
	sap();
	memset(head,0,sizeof(head));
	for(int i=m;i&&a[i].w>l;i--) Addedge(a[i].u,a[i].v);
	sap();
	printf("%d\n",ans);
}
红日-VulnStack靶场-ATT&CK(二):从Weblogic漏洞到域控渗透实战 本文详细解析了红日安全团队VulnStack靶场中从Weblogic漏洞到域控渗透的完整攻击链。通过实战演示Weblogic反序列化漏洞利用、Cobalt Strike持久化控制、域内信息收集及PsExec横向移动等关键技术,复现了企业内网渗透的典型场景,并提供了防御建议。 阅读详情

相关推荐

COMSOL中的动网格

首先我们先了解几个概念 (1)网格重划分(remesh):就是在某些特定的区域进行网格的重新划分,在Maxwell软件中的直线运动区域,当运动物体运动后,这个区域进行重新划分。 (2)morph:网格不重新划分,小范围的进行网格变形,针对运动物体运动位移较小,对变形区域不进行重划分,能够提高效率。 (3)网格滑移(sliding):针对圆形运动区域,运动与非运动区域进行网格滑移,当然边界上两侧网格不共节点,该方法不需要网格重新划分,大部分软件针对圆形运动区域采用该方法,比如maxwell的band,b

midiio的博客 7870

BZOJ-2561-最小生成树 题解(最小割)

2561: 最小生成树(题解) Time Limit:10 SecMemory Limit:128 MBSubmit:1628Solved:786 传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2561 Description  给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到...

weixin_30758821的博客 168

基于Llama 3搭建中文版(Llama3-Chinese-Chat)大模型对话聊天机器人

前面两篇博文,我们在笔记本部署了Llama 3 8B大模型,使用Ollama搭建了基于Web 可视化对话机器人。在使用过程中,大模型经常出现中文问题英文回答的问题。本博文就用Llama3-Chinese-Chat微调模型来解决这个问题……

老牛啊 9239

bzoj2561最小生成树

bzoj2561最小生成树 题意: 给定一个连通无向图,假设现在加入一条边权为L的边(u,v),求需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上。 题解: 最小割。如果一个边出现在最小生成树上,那么权值比它小的边一定不能使图联通。因为要求删掉最少,所以当加入这条边后整个图刚好联通。因此可以将这条边的一个端点作为源,另一端点作为汇,插入所以...

anheku1562的博客 166

基于Cesium实现,动态水面+大坝排水动画

一、绘制面状水域,使用水波纹理,进行渲染,水体透明,可以看到底色。三、使用粒子系统,将喷泉改变方向,加上重力设置,实现排水动画。二、绘制线状三维体,用作模拟大坝拦截效果。四、最后,模拟水位上升,进行淹没分析,

一醉千秋的专栏 1420

PINN:当深度学习遇上朗伯-比尔定律

光谱数据处理中引入PINN的三种架构设计

qq_53529450的博客 154

bzoj 2561 - 最小生成树

2561: 最小生成树 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 2966 Solved: 1370 [Submit][Status][Discuss] Description  给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的...

青烟绕指柔的博客 447

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解

每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天优快云在线答疑。

学Java,找哪吒 7万+

【BZOJ2561】最小生成树

【题目链接】 点击打开链接 【思路要点】 比较显然的最小割,即删去最少的边,使得xxx和yyy通过小于和大于给定边边权的边都不连通。 时间复杂度O(Dinic(N,M))O(Dinic(N,M))O(Dinic(N,M))。 【代码】 #include&lt;bits/stdc++.h&gt; using namespace std;...

cz_xuyixuan的博客 420

最新Python爬虫实战(入门爬虫篇)——案例7:电影网站电影数据采集(详细爬虫思路截图+抓包动图演示+完整爬虫代码+详细注释)

本次案例通过Python爬虫技术,成功实现了对某电影网站Top250多页电影详细信息的批量爬取与Excel保存。代码采用模块化设计,包含分页请求构造、XPath+正则提取结构化信息、Excel数据持久化保存等完整流程。通过配置User-Agent等请求头信息,有效模拟浏览器行为以绕过豆瓣基础反爬策略。整个爬虫逻辑遵循"分页遍历 → 请求页面 → 解析HTML → 提取电影信息 → 保存到Excel"的标准流程,与主流静态网站爬取范式高度一致。

努力让自己发光,对的人才能迎着光而来 11万+

QGis二次开发 —— 5.1、基于qgis开发雷达扫描、无人机飞行跟踪等(附:源码及工程)

基于qgis开发雷达扫描、无人机飞行跟踪等

325

bzoj2561 最小生成树 最小割

这道题目的做法有点神奇啊。。居然是用网络流。数据范围20w有点吓人啊。表示这种题目根本想不到是网络流,但告诉你是最小割还是恍然大悟的。        以最小生成树为例。把所有小于L的边取出来,显然这些边不能连通u和v,否则将u和v连起来在环上去掉L显然更小。所以求一个最小割就行了。最大生成树同理,两者相加就是答案。        然而网络流20w显然恐怖啊,后来翻lrj的书写的dinic对于容

lych的博客 1872

传导案例:某医疗仪器传导骚扰整改案例

紫外线光疗仪是一种专业的医疗设备,主要用于治疗银屑病、白癜风等皮肤疾病。该设备采用物理治疗技术,通过特定波长的紫外线照射人体来达到治疗效果。自1984年窄谱中波紫外线(NB-UVB)应用于临床以来,该技术已成为治疗早期蕈样肉芽肿(MF)的有效方法之一。作为二类医疗器械,紫外线光疗仪必须符合严格的电磁兼容性(EMC)标准,这不仅关系到设备自身的稳定运行,更关乎患者的使用安全和治疗效果。紫外线光疗仪传导骚扰整改案例充分展示了系统性EMC设计的重要性。

m0_56451176的博客 340

BZOJ 2561 浅谈最小生成树最小割

世界真的很大 这道题的方法还是比较神奇 认真想一下说不定还是能想出来,如果能结合起来好好想想 。。。 略有遗憾 但是学会了还是学会了,这是好事嘛看题先:description 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条

BerryKanry的博客 533

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

BZOJ 2561 最小生成树 | 网络流 最小割

链接 BZOJ 2561 题解 用Kruskal算法的思路来考虑,边(u, v, L)可能出现在最小生成树上,就是说对于所有边权小于L的边,u和v不能连通,即求最小割; 对于最大生成树的情况也一样。容易看出两个子问题是各自独立的,把两个最小割相加即可。 #include <cstdio> #include <cmath> #include <cstring> #...

weixin_30869099的博客 112

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

BZOJ2561 最小生成树

题目大意:给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上? 思路:对于某一条边,如果用小于这条边边权的所有边中的一部分就能够使得这条边的两个端点连通,那么这一条边必然不

守望、御神木 1148

BZOJ2561: 最小生成树

题目链接【分析】刚开始可能难以下手,先只考虑最小生成树。 要使新加的边【代码】#include <cstdio> #include <iostream> #include <queue> #include <vector> #include <algorithm> #include <cstring> #include <cmath> #include <stack> #define N 2000

Heret1c 610

[BZOJ2561][最小生成树][最小割+dinic]

[BZOJ2561][最小生成树][最小割+dinic]题目大意: 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上?思路:显然比L权值小的边会对最小生成树产生影响。同理比L权值大的

羽裳 428

【BZOJ2561】最小生成树 最小割

【BZOJ2561】最小生成树 Description  给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上? Input   第一行包含用空格隔开的两个整数,分...

weixin_30911451的博客 70

【bzoj2561】【最小生成树】【最小割】

Description  给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上?   Input   第一行包含用空格隔

sunshinezff的专栏 677

bzoj2561-最小生成树

题目 给定一个边带正权的连通无向图\(G=(V,E)\),其中\(N=|V|\),\(M=|E|\),\(N\)个点从\(1\)到\(N\)依次编号,给定三个正整数\(u\),\(v\),和\(L\) \((u≠v)\),假设现在加入一条边权为\(L\)的边\((u,v)\),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上? 分析 一开始是...

dengtan9179的博客 128

bzoj2561 最小生成树

http://www.elijahqi.win/2017/12/28/bzoj2561-%e6%9c%80%e5%b0%8f%e7%94%9f%e6%88%90%e6%a0%91/ Description 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多

Elijahqi 278
上一篇: AGC015D A or...or B Problem
下一篇: BZOJ2744 [HEOI2012]朋友圈
dogeding
博客等级 码龄10年 31粉丝 109原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值