hdu5452
http://acm.hdu.edu.cn/showproblem.php?pid=5452
题意:给个图T(图G的最小生成树),然后再给定图G的剩余边,问你从图T中当且割一条边的情况再割图G中不属于图T的边,使整个图(图G)不联通,求最小割;
分析:1、只能并且要求割图T中的一条边,所以只能割叶子节点的边才是不会差的,因为非叶子节点一定连有多条边(根节点有可能只能一条边,但树的根是可以任意的,我们这里把节点度数为1的点当作叶子节点)
2、因为图T是图G的最小生成树,所以由其性质得图T一定含有图G的所有顶点,而图G剩下的边肯定是在这颗树上某俩个节点进行连接(题目有保证剩下的边不会是生成树的边);
3、由1、2得,我们把这个图割成不联通一定是把某个叶子借点孤立起来,如果不是这样的话,你必定要割掉生成树中的其他边才能使图不联通,但我们已经割了连叶子节点的边,所以是不符合题意的。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int M=2e4+;
const int inf =0x3f3f3f3f;
int T[M],G[M];
int main(){
int t;
scanf("%d",&t);
for(int k=;k<=t;k++){
int n,m;
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
T[i]=G[i]=;
for(int i=;i<n;i++){
int u,v;
scanf("%d%d",&u,&v);
T[u]++;
T[v]++;
}
for(int i=n;i<m;i++){
int u,v;
scanf("%d%d",&u,&v);
G[u]++;
G[v]++;
}
int minn=inf; for(int i=;i<=n;i++){
if(T[i]<)
minn=min(minn,G[i]);
}
printf("Case #%d: ",k);
printf("%d\n",minn+);
}
return ; }
hdu5452的更多相关文章
- hdu5452 Minimum Cut
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5452 题意:给你一个图和它的生成树,要你在树上删一条边,问你最少删多少条边使得图不联通(开始时图一定联 ...
随机推荐
- dp--P1439 最长公共子序列(LCS)
题目描述 给出1-n的两个排列P1和P2,求它们的最长公共子序列. 输入格式 第一行是一个数n, 接下来两行,每行为n个数,为自然数1-n的一个排列. 输出格式 一个数,即最长公共子序列的长度 找出两 ...
- nodejs(6)express学习
1.简单认识express express::一个快速的网站开发框架,封装了原生的http模块,用起来更方便:API更人性化 特点 基于Node.js平台之上,进一步封装了 http 模块,从而提供了 ...
- ES6 之 数组的扩展
ES5 检测数组 let arr = [1,2,3,4] Array.isArray(arr) arr instanceof Array 转换方法 arr.toLocaleString() arr.t ...
- CodeForces (字符串从字母a开始删除k个字母)
You are given a string s consisting of n lowercase Latin letters. Polycarp wants to remove exactly k ...
- 落地即王道,锁死企业智变CP——云+AI
国庆前夜,"70年,我是主角"的微电影引发网络热议,这是人民日报新媒体和电影频道联手打造.京东云和京东AI提供技术支持.这是中国首部全民定制国庆献礼片,网友只要上传正脸照片,就能通 ...
- 吴裕雄--天生自然TensorFlow2教程:数学运算
import tensorflow as tf b = tf.fill([2, 2], 2.) a = tf.ones([2, 2]) a+b a-b a*b a/b b // a b % a tf. ...
- (函数)P1217 [USACO1.5]回文质数 Prime Palindromes
题解: 第一次: 算法复杂度过高,导致编译超时,需要优化 #include<stdio.h>#include<math.h>int a[100000001] = { 0 };i ...
- 从编程实现角度学习Faster R-CNN(附极简实现)
https://www.jianshu.com/p/9da1f0756813 从编程实现角度学习Faster R-CNN(附极简实现) GoDeep 关注 2018.03.11 15:51* 字数 5 ...
- 和我一起从0学算法(C语言版)(四)
第三章 搜索 深度优先搜索与宽度优先搜索 定义 深度优先搜索(DFS) 过程简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次. 宽度优先搜索(BFS) 不考虑结果的可能位 ...
- JavaScript学习总结(五)
之前的几讲中我们曾经说过,JavaScript中是没有类的概念的.但是我们讲过对象,那么这个对象是怎么来的呢? 只要有函数即可创建对象 自定义对象 自定义对象的方式: 1. 使用无参的函数创建对象 & ...