zoukankan      html  css  js  c++  java
  • SDUT 2506 完美网络

     

    完美网络

    Time Limit: 1000 ms Memory Limit: 65536 KiB

    Problem Description

    完美网络是连通网络的基础上要求去掉网络上任意一条线路,网络仍然是连通网络。求一个连通网络要至少增加多少条边可以成为完美网络。

    Input

    第一行输入一个数T代表测试数据个数(T<=20)。每个测试数据第一行2个数n,m 分别代表网络基站数和基站间线路数。基站的序号为从1到n。接下来m行两个数代表x,y 代表基站x,y间有一条线路。
    (0 < n < m < 10000)

    Output

    对于每个样例输出最少增加多少线路可以成为完美网络。每行输出一个结果。

    Sample Input

    2
    3 1
    1 2
    3 2
    1 2
    2 3

    Sample Output

    2
    1 

    提示:本题就是问你最少加多少条路能让这条路变成欧拉回路,而形成欧拉回路的必要条件是每个点的度数大于等于2,所以让你找最少要加几条边能让每个点度数大于等于2。

    代码实现如下(g++):
    #include<bits/stdc++.h>
    
    using namespace std;
    
    int d[10010];
    
    int main()
    {
        int t,m,n,u,v,i;
        scanf("%d",&t);
        while(t--)
        {
            int sum=0;
            memset(d,0,sizeof(d));
            scanf("%d %d",&n,&m);
            for(i=0;i<m;i++)
            {
                scanf("%d %d",&u,&v);
                d[u]++;
                d[v]++;
            }
            for(i=1;i<=n;i++)
            {
                if(d[i]<=1)
                    sum++;
            }
            cout<<(sum+1)/2<<endl;
        }
        return 0;
    }
    
    
    /***************************************************
    Result: Accepted
    Take time: 16ms
    Take Memory: 236KB
    ****************************************************/
  • 相关阅读:
    牛人对IC验证的独特理解(转载)
    soc验证扫盲(转载)
    .vimrc
    matchit匹配
    格式化verilog/systemverilog代码插件
    gvim plugin管理
    .alias
    .cshrc
    get_result --perl
    run_regress --perl
  • 原文地址:https://www.cnblogs.com/jkxsz2333/p/9506849.html
Copyright © 2011-2022 走看看