首页 > 其他分享 >最小生成树、二分图(11/2)

最小生成树、二分图(11/2)

时间:2023-11-02 22:45:25浏览次数:33  
标签:11 二分 dist int 最小 prim include const

到集合得最短距离是指点到集合中的所有点最短距离,集合就是遍历或正选中的数

prim

#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int n,m;
const int N=510 ;const int INF=0x3f3f3f3f;
int g[N][N];
int dist[N];
bool st[N];

int prim()
{
    memset(dist,0x3f,sizeof dist);
    int res=0;
    for(int i=0;i<n;i++)
    {
        //找到最近的点,t=-1的话直接更新
        int t=-1;
        for(int j=1;j<=n;j++)
          if(!st[j]&&(t==-1||dist[j]<dist[t]))
            t=j;
        
        if(i && dist[t]==INF) return INF;//首先判断,如果距离为无穷就是没有最小生成树,不连通
        
        if(i) res+=dist[t];//注意i=0的时候,dist为无穷,不算入,从第二个点加,第一个点加也没意义
        
        st[t]=true;//标记
        
    for(int j=1;j<=n;j++) dist[j]=min(dist[j],g[t][j]); //注意此处更新的是距离集合最近的点
    }
    return res;
}

int main()
{
    memset(g,INF,sizeof g);
    scanf("%d%d",&n,&m);
    while(m--)
    {
        int a,b,c;
        scanf("%d%d%d",&a,&b,&c);
        g[a][b]=g[b][a]=min(g[a][b],c);
    }
    
    int t=prim();
    if(t==INF) puts("impossible");
    else 
    printf("%d",t);
    return 0;
}

 

标签:11,二分,dist,int,最小,prim,include,const
From: https://www.cnblogs.com/daimazhishen/p/17806539.html

相关文章

  • 每日总结11.02
    今天上课听老师和同学讲了业务流程图,并自己绘制了,然后的时间做了人机交互的实验和一些软考题。 ......
  • 工作感受月记(202311月)
    2023年11月02日昨日休假被套,心里起伏活动大。很是很是反省的一天。今日工作事项1/浏览邮箱里的新内容。2/接到一个案例,问redis的指标数据和在vnet和privateendpoint间的性能。以及通过managedidentity进行访问的功能。这个可以文档介绍。3/处理手中其他杂事。我自己都感......
  • 11.2 闲花
    今天不是角色日但是我:昨天晚上用学长讲课的配套题出了一场模拟赛,比较好笑的是教练根本没对这些题审核,结果选了四道题:全英文题面(gym题洛谷没翻译)计数题一个样例答案为\(2\)一个交互题只有一个样例,没有交互库然后就开网用翻译打,然后那道交互换成了一道阅读量极大的傻逼......
  • 学习笔记8——20211303ltc
    学习笔记8一、作业要求自学教材第5章,提交学习笔记(10分),评分标准如下1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)“我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题”核......
  • 11.2 模拟赛小记
    赛时记录:5min:瞄了一眼题,感觉今天的部分分还是很多。写了一点目标分数和做题计划,就开始看T1。很明显的dij,但想怎么转点权。15min:点权转边权多源最短路,考虑建反边+超级源点就能完美解决。开写。代码实现用了5min但答案不对。哦,输出魅力值最高的城市。写成魅力值最高了。......
  • openGauss学习笔记-112 openGauss 数据库管理-管理用户及权限-行级访问控制
    openGauss学习笔记-112openGauss数据库管理-管理用户及权限-行级访问控制行级访问控制特性将数据库访问控制精确到数据表行级别,使数据库达到行级访问控制的能力。不同用户执行相同的SQL查询操作,读取到的结果是不同的。用户可以在数据表创建行访问控制(RowLevelSecurity)策略,该......
  • 11.3
    本次实现前端代码add.html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>新增生产计划</title><style>body{font-family:Arial,sans-serif;}......
  • 11月2日GIL机制、计算密集型和io密集型
    目录CPythonGIL机制Jython、IronPython和PyPy(了解)为什么要有GIL机制例子计算密集型io(输入/输出)密集型CPythonCPython是Python的一种实现,它是官方解释器之一,而Python是编程语言本身的名称。然后CPython里面就有一个机制GIL(全局解释器锁),它是CPython中的一个重要特性,它对多线程......
  • 大学生创新训练项目开发日志 (10-26 ~ 11-2)
    进展资源钩取我们通过如下方法对资源钩取模块进行了改进:对getDrawable()返回的Drawable实例进行了进一步处理,降低被丢弃的资源的比率。通过LayoutInflater.inflate()返回的ImageView实例的getDrawable()方法获取该实例内含的Drawable资源。进行了如下改进后,对......
  • 11.2
    今天我们来实现上次期中考试的代码,本次实现的是后端 Pojo类1、Plan.java类packagecom.example.pojo;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importjava.time.LocalDateTime;importjava.util.List;@Data@AllArgs......