jzoj3237-间谍派遣【最小生成树,并查集】

正题


题目大意

一张图,第iii个点参加任务需要mkimk_imki元,连接一条边需要一定费用,要求每个联通图都有参加任务的点,求最小费用。


解题思路

其实就是求若干个最小生成树然后这个最小生成树的权值就是这个棵树的所有边权加上最小的点权。我们使用KruskalKruskalKruskal来求,我们每次合并两个联通块时可以减少两个联通块的最小点权中较大的费用。

也就是我们定义costicost_icosti表示iii这个联通块中的最小点权,若我们合并一条边x−>yx->yx>y可以减少的费用是max{max{costx,costy}−w,0}max\{max\{cost_x,cost_y\}-w,0\}max{max{costx,costy}w,0}
然后我们也是先将边排序然后处理即可。


codecodecode

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=1100;
struct node{int x,y,w;
}a[N*N];
int n,tot,ans,fa[N],cost[N];
bool cmp(node x,node y)
{return x.w<y.w;}
int find(int x)
{if(fa[x]==x) return x;return fa[x]=find(fa[x]);
}
void unionn(int x,int y)
{int Fa=find(x),Fb=find(y);if(Fa<Fb) fa[Fb]=Fa,cost[Fa]=min(cost[Fa],cost[Fb]);else fa[Fa]=Fb,cost[Fb]=min(cost[Fa],cost[Fb]);return;
}
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){int x;scanf("%d",&x);a[++tot].x=i;a[tot].y=j;a[tot].w=x;}for(int i=1;i<=n;i++)scanf("%d",&cost[i]),fa[i]=i,ans+=cost[i];sort(a+1,a+1+tot,cmp);for(int i=1;i<=tot;i++){int fx=find(a[i].x),fy=find(a[i].y);if(fx==fy||a[i].w>max(cost[fx],cost[fy])) continue;ans-=max(max(cost[fx],cost[fy])-a[i].w,0);unionn(fx,fy);}printf("%d",ans);
}

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

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

相关文章

g4e基础篇#6 了解Git历史记录

Git的版本历史记录采用了与传统集中式版本管理系统完全不同的方式进行组织&#xff0c;在刚开始使用Git的时候我们往往会不知所措&#xff0c;比如看到这样的历史记录。看到这个七拐八拐的图形&#xff0c;你可能完全不知道它代表了什么。其实这正是Git的特别之处&#xff0c;G…

Nacos(二)之概念

转载自 Nacos 概念 NOTE: Nacos 引入了一些基本的概念&#xff0c;系统性的了解一下这些概念可以帮助您更好的理解和正确的使用 Nacos 产品。 地域 物理的数据中心&#xff0c;资源创建成功后不能更换。 可用区 同一地域内&#xff0c;电力和网络互相独立的物理区域。同一可…

bzoj3482,jzoj3238-超时空旅行hiperprostor【最短路,凸包,斜率优化】

正题 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id3482 题目大意 一张有向图有正整数边权也有xxx边权。其中xxx可以取任何值(但是要注意所有的xxx边必须长度相等)&#xff0c;每次询问求SSS到TTT的可能最短路长度个数和它们的和。 解题思路 分层图&#xff…

Ray框架QA

Orleans与Akka对比&#xff0c;为什么选用Orleans&#xff1f;答: Akka对参与开发的人员要求更高一些&#xff0c;普遍是专家级别&#xff0c;Orleans框架进一步抽象了一层&#xff0c;结合C#语言特性&#xff0c;能普遍降低开发难度。下面是知乎网友的答案&#xff0c;可以参考…

Nacos(三)之架构

转载自 Nacos 架构 基本架构及概念 服务 (Service) 服务是指一个或一组软件功能&#xff08;例如特定信息的检索或一组操作的执行&#xff09;&#xff0c;其目的是不同的客户端可以为不同的目的重用&#xff08;例如通过跨进程的网络调用&#xff09;。Nacos 支持主流的服务…

欢乐纪中某A组赛【2019.7.11】

前言 话说今天好像放做题导致BBB组贼难AAA组还好。 成绩 JJJ表示初中&#xff0c;HHH表示高中后面加的是几年级 RankRankRankPersonPersonPersonScoreScoreScoreAAABBBCCC101010(J−2)WYC(J-2)WYC(J−2)WYC250250250100100100100100100505050282828(J−2)ZYC(J-2)ZYC(J−2)ZYC…

ASP.NET Core Razor页面禁用防伪令牌验证

这篇短文中&#xff0c;我将向您介绍如何ASP.NET Core Razor页面中禁用防伪令牌验证。Razor页面是ASP.NET Core 2.0中增加的一个页面控制器框架&#xff0c;用于构建动态的、数据驱动的网站&#xff1b;支持跨平台开发&#xff0c;可以部署到Windows&#xff0c;Unix和Mac操作系…

Nacos(四)之安装

转载自 Nacos 快速开始 这个快速开始手册是帮忙您快速在您的电脑上&#xff0c;下载、安装并使用 Nacos。 0.版本选择 您可以在Nacos的release notes及博客中找到每个版本支持的功能的介绍&#xff0c;当前推荐的稳定版本为1.4.1。 1.预备环境准备 Nacos 依赖 Java 环境来…

jzoj1166-树中点对距离【点分治】

正题 题目大意 求一棵树上有多少条路径长度≤len\leq len≤len 解题思路 首先普通点分治。扫描的时候将每个点保存为一个二元组(dis,gra)(dis,gra)(dis,gra)分别表示离(分治到的)根的距离&#xff0c;属于根的那颗子树。 然后按照disdisdis排序&#xff0c;两个指针L,RL,RL,…

ASP.NETCore的Kestrel服务器

什么是Kestrel服务器Kestrel是开源的&#xff08;GitHub提供的源代码&#xff09;&#xff0c;事件驱动的异步I / O服务器&#xff0c;用于在任何平台上托管ASP.NET应用程序。这是一个监听服务器和一个命令行界面。您将侦听服务器安装在Windows或Linux服务器上&#xff0c;并在…

Nacos(五)之Spring集成

转载自 Nacos Spring 快速开始 本文主要面向 Spring 的使用者&#xff0c;通过两个示例来介绍如何使用 Nacos 来实现分布式环境下的配置管理和服务发现。 关于 Nacos Spring 的详细文档请参看&#xff1a;nacos-spring-project。 通过 Nacos server 和 Nacos Spring 配置管…

jzoj3360-[NOI2013模拟]苹果树【树上莫队,LCA】

正题 题目大意 一棵树上每个节点有不同的颜色&#xff0c;然后每次询问(x,y,a,b)(x,y,a,b)(x,y,a,b)表示将颜色aaa看为颜色bbb的情况下询问xxx到yyy有多少不种的颜色。 解题思路 数颜色&#xff0c;显然树上莫队。我们维护一个欧拉序dfndfndfn(进去时记录一次出来时记录一次)…

Polly组件对微服务场景的价值

Polly是一个开源框架,在github上可以找到,被善友大哥收录,也是.App vNext的一员!App vNext:https://github.com/App-vNextGitHub:https://github.com/App-vNext/PollyNanoFabric是一个开源的微服务架构,也是善友大哥推荐的:https://github.com/geffzhang/NanoFabric对于NanoFab…

Nacos(六)之Spring Boot集成

转载自 Nacos Spring Boot 快速开始 本文主要面向 Spring Boot 的使用者&#xff0c;通过两个示例来介绍如何使用 Nacos 来实现分布式环境下的配置管理和服务发现。 关于 Nacos Spring Boot 的详细文档请参看&#xff1a;nacos-spring-boot-project。 通过 Nacos Server 和…

P4556,jzoj3397-[GDOI2014模拟]雨天的尾巴【树链剖分,线段树】

正题 题目链接:https://www.luogu.org/problemnew/show/P4556 题目大意 nnn个点的一棵树&#xff0c;给出mmm个操作(x,y,z)(x,y,z)(x,y,z)表示将xxx到yyy的路径上的所有点给与一个zzz类型的食量。 最后对于每个点输出最多的粮食类型。 解题思路 先对这棵树进行树剖&#xff…

Nacos(七)之Spring Cloud集成

转载自 Nacos Spring Cloud 快速开始 本文主要面向 Spring Cloud 的使用者&#xff0c;通过两个示例来介绍如何使用 Nacos 来实现分布式环境下的配置管理和服务注册发现。 关于 Nacos Spring Cloud 的详细文档请参看&#xff1a;Nacos Config 和 Nacos Discovery。 通过 Nac…

.NET Core 2.1中改进的堆栈信息

. NET Core 2.1 现在具有可读的异步堆栈信息&#xff01;使得异步、迭代器和字典 ( key not found ) 中的堆栈更容易追踪&#xff01;这个大胆的主张意味着什么&#xff1f;要知道&#xff0c;为了确定调用 异步 和 迭代器方法的实际重载&#xff0c;&#xff08;这在以前&…

jzoj3362,bzoj3758-[NOI2013模拟]数数【分段打表,背包,状压】

正题 bzojbzojbzoj题面链接:https://www.lydsy.com/JudgeOnline/problem.php?id3758 题目大意 求A∼BA\sim BA∼B中有多少个数满足数字上的位数可以分成两个和相等的集合。 解题思路 首先我们考虑如何快速判断一个数是否是满足要求的数&#xff0c;我们可以用背包&#xff0…

Nacos(八)之Docker

转载自 Nacos Docker 快速开始 操作步骤 Clone 项目 git clone https://github.com/nacos-group/nacos-docker.git cd nacos-docker单机模式 Derby docker-compose -f example/standalone-derby.yaml up单机模式 MySQL 如果希望使用MySQL5.7 docker-compose -f example/sta…

微软高管解读财报:努力创新云基础架构

2月1日&#xff0c;微软发布了该公司截至2017年12月31日的2018年第二财季财报&#xff08;即2017年第四季度&#xff09;。财报显示&#xff0c;微软第二财季营收为289.18亿美元&#xff0c;比上年同期的258.26亿美元增长了12%。受税改与就业法案相关的一次性费用138亿美元的影…