Ice_cream’s world II HDU - 2121 最小树形图

结合 Conda 手动安装 RepeatMasker RepeatMasker 是一个广泛使用的生物信息学工具,用于识别和屏蔽(mask)基因组序列中的 重复序列(repeats) 。在使用过程中需要调用重复序列数据库(Repbase 和 Dfam),如果使用Conda安装的话会出现许多问题,因此推荐手动安装。在此记录我手动安装RepeatMasker的流程,希望对各位同学有所帮助。 阅读详情

https://vjudge.net/contest/179107#problem/B

参考https://vjudge.net/solution/3192331

这个地方的超级源点很妙。。。

int n,m,idx,maxx;
int pre[mxn],id[mxn],vis[mxn],in[mxn],tot;
struct edge{
    int u,v,w;
}e[mxe];
void add(int u,int v,int w){
    e[++tot].u=u,e[tot].v=v,e[tot].w=w;
}

int DMST(int s,int n){
    int ret=0;
    while(1){
        mem(in,inf);
        for(int i=1;i<=m;++i){
            int u=e[i].u,v=e[i].v,c=e[i].w;
            if(c<in[v]&&u!=v){
                pre[v]=u,in[v]=c;
                if(u==s)
                    idx=i;
            }
        }
        in[s]=0;
        //for(int i=1;i<=m;++i)pf("%d ",e[i].w);puts("");
        //for(int i=1;i<=n;++i)pf("%d ",in[i]);puts("");
        for(int i=1;i<=n;++i)
            if(in[i]==inf)
                return -1;
        in[s]=0;
        int cnt=0;
        mem(id,-1);
        mem(vis,-1);
        for(int i=1;i<=n;++i){
            ret+=in[i];
            int v=i;
            while(vis[v]!=i&&id[v]==-1&&v!=s)
                vis[v]=i,v=pre[v];
            if(id[v]==-1&&v!=s){
                id[v]=++cnt;
                for(int u=pre[v];u!=v;u=pre[u])
                    id[u]=cnt;
            }
        }
        if(cnt==0){
            break;
        }
        for(int i=1;i<=n;++i)if(id[i]==-1)id[i]=++cnt;
        for(int i=1;i<=m;++i){
            int u=e[i].u,v=e[i].v;
            e[i].u=id[u],e[i].v=id[v];
            if(id[u]!=id[v])
                e[i].w-=in[v];
        }
        n=cnt;
        s=id[s];
    }
    return ret;
}

int main(){
    //freopen("in.txt","r",stdin);
    while(~sf("%d%d",&n,&m)){
        tot=0;idx=0;
        int e=0;
        maxx=1;
        rep(i,1,m){int u,v,w;sf("%d%d%d",&u,&v,&w);u++;v++;maxx+=w;add(u,v,w);e++;}
        rep(i,1,n){ add(n+1,i,maxx); }
        m+=n;
        int ans=0;
        if((ans=DMST(n+1,1+n))>=maxx*2)pf("impossible\n\n");
        else pf("%d %d\n\n",ans-(maxx),idx-e-1);
    }
}
塔石DTU通过MQTT传递数据教程 塔石通过MQTT通讯上传ADL400电表用电量。 阅读详情

相关推荐

如何用 OBProxy 实现 OceanBase 的最佳路由策略

本文基于业务中一类常见的路由问题展开,对OceanBase的路由功能及对应配置项做详细介绍,指导用户在业务实践中如何正确的配置路由策略及快速排查路由问题

OceanBase分布式数据库的博客 1682

hdu2121 最小树形图 (无根)

加入一个虚点 往每条边放入INF 这样的话 最多只有一条边会与他 相连 只需要记录一下第几个点是和虚点相连即可 注意!不查重比较简便! #include<iostream> #include<cstring> #define INF 0x3f3f3f3f using namespace std; const int N = 1100,M = 11000 + N; struct node{ int x,y,w; }a[M]; int dis[N][N]; int n,m

qqqingyi的博客 207

Delphi 12.3 精简绿色版下载

Delphi精简绿色版基于原版安装,去掉了InterBase、法语、德语、日语,只保留了Delphi Windows 32和Delphi Windows 64桌面开发,其余部分未做任何修改。Delphi精简绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用Delphi,请购买正版。绿色版基于原版安装,未做任何精简和修改。绿色版不含任何破解,仅供学习和研究,24小时后请自行删除,如需继续使用RAD Studio,请购买正版。

全粘工程师 4303

HDU -- 2121 【无定根的最小树形图】

传送门题意:   有n个点,有m条单向路,问这n个点组成最小树形图的最小花费    思路: 1:构造虚根最小树形图   因为是不定根,所以我们可以假设一个虚拟根,分别与n个点都有一条权值为r的虚边,假如我们把r设的非常大的话,我们求出来的值就可以判一下选了几条虚边, 如果有两条以上, 则这个图原来是不连通的.2:不含虚拟点的最小树形图的根节点   因为在缩点的时候我们需要给每一个点进行从

Anxdada -- 我等风来也等你 714

别再写爬虫了!用Trae平台5分钟搞定一个能聊天的网页数据抓取Agent

本文介绍了如何利用Trae平台快速构建无需编程的网页数据抓取智能体,实现对话式数据采集。通过自然语言指令,用户可在5分钟内完成从数据抓取到分析的全流程,显著降低技术门槛和维护成本。文章详细解析了Trae智能体的核心能力,包括自然语言理解、智能页面解析、数据清洗和可视化配置,并提供了多个实战案例,展示其在竞品监控和舆情分析中的高效应用。

weixin_29038303的博客 717

2025最新正版Autodesk 3ds Max 2022安装教程:从下载到中文环境配置全流程解析

Autodesk 3ds Max 2022是一款专业的三维建模、动画和渲染软件,广泛应用于影视制作、游戏开发、建筑可视化等领域。

waicsdn_haha的博客 1万+

hdu2121(不确定起始点的最小生成图,模板,学习)

题意:要你在一些城市中选一个做首都 , 要求首都都能到其他城市 , 道路花费要最少 , 且道路都是单向的 , 这个时候就要用到最小树形图算法了 , 而且是不固定根. 解决的问题:最小生成图就是要求从某个原点能到其他所有点,且构成这颗树的边权和最小。 算法复杂度O(VE) 关于算法实现步骤详见https://www.cnblogs.com/xzxl/p/7243466.html #incl...

qq_39861441的博客 288

AWS-解析mysql binlog同步数据方案

虽然是公有云的鼻祖,AWS在某些产品的实现却太不给力;可能是习惯了阿里云喂到嘴边的感觉,AWS很多方案需要自己折腾,蛋疼!比如这里要讲的mysql数据同步方案。 阿里云产品DTS,点几下就OK了,AWS,只能通过插件安装、配置、调试、蹚坑……,具体就是用msk的debezium插件连接器。没见识过的一脸懵逼,下面说下配置步骤和一些注意的坑。

sdmei 1407

HDU2121(最小树形图的模版算法题)

这个道题也是在看了大神之后敲的,我也是刚刚学习这个 ^ _ ^,看来离大佬们的距离还是太远了:以下内容也是在学习大佬讲解的内容之后,根据大佬们的详细讲解中总结出来的! 贪心算法。可以想到每次都找每个点的入边中最小的一个来构成树,如果构成了,就是最小的。但是构成过程中可能会出现环,这时候就需要缩点。 而且因为每个点只选取一条入边,所以构成的环一定是简单环。 每次找到环以后需要更新权值,规则是这样的: 对于每条指向环的边,该边边权减去所指向点的最小入边。更新后继续找环,直到没有环即找到最小树形图。时间复杂度 O

Keep_Trying_Go的博客 505

从误检率30%到99.7%:YOLOv8/v9工业零件缺陷检测实战(附产线部署全流程与参数调优秘籍)

工业场景YOLO实战:从实验室到车间的关键调优策略 本文针对工业缺陷检测的特殊性,系统总结了YOLOv8/v9在工业应用中的实战经验。通过齿轮厂缺陷检测案例,揭示了实验室模型与工业场景的三点本质差异:小目标特性(0.2-1mm缺陷)、复杂背景干扰(油污/反光)和数据量不足问题。重点提出了工业级解决方案:1)数据采集需覆盖极端工况(不同光照/污染/角度);2)标注采用LabelStudio+预标注提升效率;3)定制工业增强策略(反光模拟/缺陷复制粘贴)。文章还提供了完整的参数调优记录和TensorRT加速部署

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1733

谁还攥着旧的类加载器:Metaspace OOM 的元数据记账、类卸载条件与泄漏定位解析

MetaSpace区是JVM内存管理中的关键部分,负责存储类元数据。随着Java 8的推出,MetaSpace取代了PermGen区,但其灵活性也带来了新的挑战,尤其是在动态类加载和频繁类更新的场景下,容易导致MetaSpace内存溢出(OOM)问题。本文探讨了MetaSpace OOM的根本原因,包括类加载器泄漏、内存管理不当和GC效率低下等,并提供了一系列调优策略和解决方案,帮助开发者有效排查和防止此类问题的发生,确保应用程序的稳定性和高可用性。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 15万+

hdu2121 朱刘算法不定根

hdu4009也可以做一下,据说是模板题,我愣是没看出来,从hdu4009才晓得加虚根,但这个题又懵逼了,不知道咋处理,加虚根也不会处理啊,对算法的理解还是不够。 题解: 1:加虚根root=0,从虚根向1-n的点都连接一个边权为sum的边。 2:sum=样例中所有边的权值和+1,不懂就继续往下看。 3:如果我们从虚根出发形成的最小树形图的值为ans。如果ans-sum>=sum,...

qq_41755258的博客 320

关于React Native Android找不到node的错误

最近,按照官方文档初始化了一个React Native项目,但是在Android端运行的时候,报了如下的一个错误。 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:recordFilesBeforeBundleCommandDebug'. Caused by: org.gradle.process.internal.ExecException: A problem occurred starting p

xiangzhihong8的专栏 4246

【题解】Ice_cream’s world II HDU - 2121 ⭐⭐⭐⭐【最小树形图 虚根】

Ice_cream’s world II HDU - 2121 After awarded lands to ACMers, the queen want to choose a city be her capital. This is an important event in ice_cream world, and it also a very difficult problem, bec...

Suprit's blog 730

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

HDU 2121 Ice_cream’s world II 最小树形图

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2121 题意:求一个有向图的不定根的最小树形图 构造一个虚根,将所有点都连向虚根,权值为所有边总和+1 然后用朱刘算法跑一遍 因为枚举的顺序是从小到大,所以得出的根一定是最小的字典序 #include<iostream> #include<cstdio&gt...

dengyaodan0206的博客 177

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

[HDU 2121]Ice_cream’s world II[无定根的最小树形图]

题目链接:[HDU 2121]Ice_cream’s world II[无定根的最小树形图] 题意分析: 选择一个点作为根节点形成一个最小树形图,根节点下标尽量小。 解题思路: 虚拟出一个根节点,让它和每个点构成的边权值为 图中所有边权值之和+1 ;那么最终结果就是,如果所得图权值大于等于上值的两倍,那么不存在(从虚点连了两条边以上),否则答案就等于所得结果减去上值(即减去多出来的那一条虚边

闲停 626

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HDU2121 Ice_cream’s world II【最小树形图】

题目链接:HDU2121 Ice_cream’s world II 题意:n个点m条边做最小树形图,如果存在输出权值和根,不存在输出impossible; 分析:加一个超级点和每个点都有边,如果存在那么超级点连向的点一定是根,并且有且只有一个;如果有多个,那么原图必定不存在最小树形图,因为多借用了至少一条虚边(因为加了一个点,一条虚边是必须要的),那么我们就把虚边的权值定为所有边权值和+1(s...

MaJorieL 234

HDU 2121 Ice_cream’s world II(无根的最小树形图)

HDU2121 无根的话,建立虚点n+1n+1n+1 n+1n+1n+1向其他节点连一条边权足够大的边 求以n+1n+1n+1为根的树形图,只会包含一条这种边权超大的边 最后减去即可. #include <bits/stdc++.h> using namespace std; const int maxn = 4e5+10; const int inf = INT_MAX; int n,m,ansnum; int id[maxn],vis[maxn],pre[maxn],inw[maxn];

jziwjxjd的博客 449

HDU 2121 Ice_cream’s world II(无固定根最小树形图、找最小根)

题目链接: HDU 2121 Ice_cream’s world II 题意: 有n个城市[编号0–n-1]和m条边需要在n个城市中选择一个城市作为首都,使得从首都到其他城市的都能连通而且路径权值和要最小。如果不能找到这样的首都输出-1,否则输出最小的路径权值和和相应的首都,如果在同一最小路径权值下有多个首都选择,输出最小编号的那个。 分析: 如果原图是可以生成最小树形图,因为只添加了一个

ramay7 578

HDU 2121 Ice_cream’s world II (最小树形图+虚根)

题意:有n个点(0~n-1),m条有向边,问以哪个点作为起点使得最小生成树的权值最小,如果可以构成输出权值和顶点编号,否则输出impossible。 题解:最小树形图+虚根 还好做了这题,板子有点问题。 由于要求以哪一个为根权值和最小,枚举肯定不行,考虑加点,也就是虚根。 对于这个虚根,我们将其连向每一个点,权值为原本所有边权和+1,这样是为了避免出现有两条或以上连向虚根的边。 跑完朱刘之后,最小树形图出来了,如何求起点呢?从虚根入手,新加入的边的编号-m就是点的编号。 #define _CRT_SECUR

gongyuandaye的博客 271

HDU 2121 Ice_cream’s world II 无根最小树形图

                                         Ice_cream’s world II After awarded lands to ACMers, the queen want to choose a city be her capital. This is an important event in ice_cream world, and it also...

点滴 302

Ice_cream’s world II - HDU 2121 - 最小树形图

Ice_cream’s world II - HDU 2121 - 最小树形图题目  http://acm.hdu.edu.cn/showproblem.php?pid=2121题意  给你n个点和m条有向边,问最少能花费多少将它们连起来,如果能连起来输出需要的权值和根的序号,不能的话输出impossible。思路  不定根最小树形图,虚拟出一个树根出来,令这个树根到每个点的权值为大于所有边的权值之

LucienShui 655

HDU2121 Ice_cream’s world II 最小树形图

Problem Description After awarded lands to ACMers, the queen want to choose a city be her capital. This is an important event in ice_cream world, and it also a very difficult problem, because the wor

No_Retreats的专栏 2262

hdu 2121 Ice_cream’s world II 最小树形图

题意 给一个n个点m条边的有向图,边有边权问以任意一个点为根的最小树形图的权值是多少,并且要求出编号最小的根。 n≤1000,m≤10000n≤1000,m≤10000n\le1000,m\le10000 分析 做了一天终于做出来了。 求最小树形图要用到朱刘算法,过程大概是每次对所有点找一条权值最小的入边,若存在点没有入边则最小树形图不存在;否则的话,若不存在环,则表明找到了最小树形...

beginend 293

HDU 2121 Ice_cream’s world II (不定根最小树形图)

题目地址:HDU 2121 这题没有给定根。最容易想到的当然是暴力,枚举所有的根,但是TLE是显然的。。为了处理不定根的情况,可以虚拟一个根,然后用这个根去跟所有的点连边,权值为其他所有权值的和+1,目的是防止成为最小树形图的一条边。然后跑出最小树形图后,那么这个虚拟根肯定跟一个实际根相连,这时候根就找到了,然后再在最终的总花费中减去虚拟的那条边的权值就可以了。 代码如下:#include <i

scf0920 958

HDU 2121 Ice_cream’s world II (不定根的最小树形图)

Ice_cream’s world II Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7790Accepted Submission(s): 2054 Problem Description After awarded ...

YIU 301
上一篇: Codeforces Round #428 (Div. 2) B 贪心
下一篇: HDU 2204 Eddy's爱好 (容斥原理)
sega_handsome
博客等级 码龄10年 7粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值