• 【洛谷 2820】局域网


    题目背景

    某个局域网内有n(n<=100)台计算机,由于搭建局域网时工作人员的疏忽,现在局域网内的连接形成了回路,我们知道如果局域网形成回路那么数据将不停的在回路内传输,造成网络卡的现象。因为连接计算机的网线本身不同,所以有一些连线不是很畅通,我们用f(i,j)表示i,j之间连接的畅通程度,f(i,j)值越小表示i,j之间连接越通畅,f(i,j)为0表示i,j之间无网线连接。

    题目描述

    需要解决回路问题,我们将除去一些连线,使得网络中没有回路,并且被除去网线的Σf(i,j)最大,请求出这个最大值。

    输入格式

    第一行两个正整数n k

    接下来的k行每行三个正整数i j m表示i,j两台计算机之间有网线联通,通畅程度为m。

    输出格式

    一个正整数,Σf(i,j)的最大值

    输入输出样例

    输入 #1
    5 5
    1 2 8
    1 3 1
    1 5 3
    2 4 5
    3 4 2
    
    输出 #1
    8

    说明/提示

    f(i,j)<=1000

    题解:要使删去的边最大,就等于使剩下的边长度最小,本题用最小生成树。每篇感觉都差不多啊。

    #include<iostream>
    #include<algorithm>
    #include<queue>
    #include<cmath>
    #include<cstring>
    #include<cstdlib>
    #include<cstdio>
    using namespace std;
    typedef double db;
    const int N=20005;
    int n,m,cp,tot,fa[N],b[N];
    
    struct node{
        int x,y;
    }a[N];
    
    struct YCLL{
        int u,v;
        int va;
    }e[N];
    
    int ans=0;
    
    bool cmp(YCLL aa,YCLL bb){
        return aa.va<bb.va;
    }
    
    int find(int x){
        if(x!=fa[x]) 
           fa[x]=find(fa[x]);
        return fa[x];
    }
    int main(){
        freopen("2820.in","r",stdin);
        freopen("2820.out","w",stdout);
        scanf("%d",&n); scanf("%d",&m);
        for(int i=1;i<=n;i++) fa[i]=i;
        int pou=0;
        for(int i=1;i<=m;i++){
            scanf("%d %d %d",&e[i].u,&e[i].v,&e[i].va);
            pou+=e[i].va; 
        } 
            
        sort(e+1,e+m+1,cmp);
        for(int i=1;i<=m;i++){
            int uu=find(e[i].u);
            int vv=find(e[i].v);
            if(uu==vv) continue;
            ans+=e[i].va; 
            fa[uu]=vv; tot++;
            if(tot==(n-1)) break;
        }
        printf("%d",pou-ans);
        return 0;
    }
  • 相关阅读:
    httpClient模拟浏览器发请求
    中文字符所占字节
    eclipse代码左虚线对齐设置
    git 几款好用的客户端工具
    github快速入门(一)
    eclipse插件开发(一)
    SpringMVC解决跨域的两种方案
    SpringMVC SessionAttributes 简述
    关于Spring的HibernateTemplate的findByExample方法使用时的一点注意。
    Windows10 Ubuntu bash 配置 LAMP+JDK+Tomcat
  • 原文地址:https://www.cnblogs.com/wuhu-JJJ/p/11296264.html
Copyright © 2020-2023  润新知