首页 > 编程语言 >算法与数据结构Day02

算法与数据结构Day02

时间:2023-06-18 10:44:49浏览次数:43  
标签:map include int Day02 sum dis 算法 数据结构 105

修建道路

#include<stdio.h>
#include<string.h>
#include<algorithm>

using namespace std;
 
int inf=0x3f3f3f;
int map[105][105],dis[105],book[105];
int m,n;
 
int prim()
{
    int i,j,k,sum=0,u,min;
    
    for(i=1;i<=n;i++)
    {
        dis[i]=map[1][i];
        book[i]=0;
    }
    book[1]=1;
    for(i=1;i<n;i++)
    {
        min=inf;
        for(j=1;j<=n;j++)
        {
            if(book[j]==0&&min>dis[j])
            {
                min=dis[j];
                u=j;
            }
        }
        book[u]=1;
        sum+=dis[u];
        
        for(j=1;j<=n;j++)
        {
            if(book[j]==0&&dis[j]>map[u][j])
            dis[j]=map[u][j];
        }
    }
    return sum;
}
 
int main()
{
    int a,b,c,i,j,k;
    while(scanf("%d",&n)!=EOF)
    {
        memset(map,inf,sizeof(map));
        for(i=1;i<=n;i++)
        {
            for(j=1;j<=n;j++)
            {
                scanf("%d",&map[i][j]);
            }
        }
        scanf("%d",&a);
        for(i=1;i<=a;i++)
        {
            scanf("%d%d",&b,&c);
            map[b][c]=map[c][b]=0;
        }
        
        printf("%d\n",prim());
    }
    return 0;
}

 

标签:map,include,int,Day02,sum,dis,算法,数据结构,105
From: https://www.cnblogs.com/yingxq/p/17488796.html

相关文章

  • 深度学习-算法的创世纪【人工智能】
    深度学习通过训练深层神经网络模型,可以自动学习和提取数据的特征,包括更准确的图像识别、自然语言处理、医学诊断等方面的应用。序言深度学习是一种机器学习方法,其目标是通过模拟人脑神经网络的结构和功能,让机器能够从大量的数据中自动学习和提取特征,从而实现智能化的数据处理和决......
  • 算法与数据结构——kmp算法
    7-1jmu-ds-实现KMP分数 10#include<stdio.h>#include<iostream>#include<string.h>usingnamespacestd;constintMAX_LEN=20010;//本题运用到字符串比对中的next[j]求法具体算法可以直接百度//get_next就是用于求next[j]的这里只需要传入目标串就行voidget_nex......
  • 数据结构课程设计2023夏7-4 先序和中序构造二叉树
    本题目要求用先序序列和中序序列构造一棵二叉树(树中结点个数不超过10个),并输出其后序序列。输入格式:在第一行中输入元素个数。第二行中输入先序序列,用空格分隔。第三行中输入中序序列,用空格分隔。输出格式:输出此二叉树的后序序列,用空格分隔,最后也有一个空格。输入样例:......
  • Python-练脑系列-03数据结构
    练脑不断,快乐不止;本次是第三期练脑。1、给定一个列表,其中每个元素都是一个由数字和运算符组成的字符串,例如['2+3','4*5','6/3'],计算列表中所有元素的值,并返回结果的列表。2、给定一个列表和一个整数k,返回列表中所有长度为k的连续子序列中的最大值。3、给定一个字典,其中键和值......
  • 代码随想录Day24|回溯算法+JAVA大作战
     今日任务39. 组合总和40.组合总和II131.分割回文串 93.复原IP地址  78.子集   90.子集II   39.组合总和classSolution{List<List<Integer>>ans=newArrayList<>();LinkedList<Integer>now_ans=newLinkedList<>();publicLi......
  • 数据结构-枚举
    在Java中,枚举(Enumeration)是一种特殊的数据类型,用于定义一组具名的常量。枚举常量是一组预定义的值,它们在枚举类型中被列出,每个常量都有一个名称和一个关联的值。枚举类型在Java中是通过关键字enum来定义的。定义枚举类型后,可以使用枚举常量来表示具体的取值。enumSeason{......
  • [ML从入门到入门] 初识人工神经网络、感知机算法以及反向传播算法
    前言人工神经网络(Artificialneuralnetworks,ANNs)被广泛认为诞生于20世纪四五十年代,其核心理论可以追溯到19世纪初 Adrien-MarieLegendre发明的最小二乘法,而在今天,经过了半个世纪互联网和计算机技术的迅猛发展,这片耕耘良久的沃土重新掀起了机器学习的研究热潮。本文主要......
  • 数据结构
    Java提供了许多常见的数据结构,包括但不限于以下几种:数组(Array):用于存储固定大小的元素序列。动态数据(ArrayList)链表(LinkedList):通过节点之间的链接关系来存储元素的线性数据结构。栈(Stack):遵循后进先出(LIFO)原则的数据结构,可以用于存储和检索元素。队列(Queue):遵循先进先出(FIFO)原......
  • Day03 3.3 使用Python还原算法
    Day033.3使用Python还原算法加密分类1、单向加密:MD5、sha系列不可逆2、对称加密:AES、DES3、非对称加密:RSA、DSA4、补充算法:base64【一】md5importhashlibm=hashlib.md5()m.update('helloworld'.encode("utf8"))print(m.hexdigest())【二......
  • Java彩虹渐变算法
    彩虹渐变算法前言​ 最近有一个需求是需要一直去改变字体的颜色,然后我就想到了使用彩虹颜色作为字体颜色,使颜色按照彩虹颜色的顺序进行变化。​ 然后查了一下彩虹的颜色可以分为6种(对,不是七种),用RGB来表示分别是#FF00FF,#FFFF00,#00FF00,#00FFFF,#0000FF,#FF00FF,因此我们只需要......