D. 爱好和平

时间限制 1000 ms 内存限制 65536 KB

题目描述

在星际时代,每个帝国都靠着贸易路线连接着各个联盟星球,这些贸易路线都是双向可达的。一个帝国的综合实力由他贸易连接着的联盟星球数决定。
学姐作为Mays帝国的领袖,长期与Luke帝国保持着敌对关系,爱好和平的学姐希望结束长达几个世纪的战争,于是找实验室定做了一颗代号小苹果的炸弹,可以定点摧毁一颗星球,这颗星球被毁后,与它相连的全部贸易就都被切断了,这样Luke帝国可能就被切断为一个小联盟,他们就再也不会对学姐的地位构成威胁啦~
经过调查,Luke帝国为了节约经费,他的联盟星之间都有且仅有一条直接或间接的贸易通路。
现在给出Luke帝国的贸易线路,学姐想知道摧毁哪一颗行星可以使得分裂后的若干Luke联盟威胁最大的分部最小。

输入格式

输入有多组数据,组数不大于10组。每一组开头一行为n,m,表示Luke帝国的联盟星球数量,和贸易关系数,接下来m行,每行两个整数u,v,表示星球u,v之间存在直接的贸易路线,1<=u,v<=n,1<=n,m<=100000

输出格式

输出一个数表示推荐学姐摧毁的星球,如果有多解,输出编号最小的一个。

输入样例

5 4
1 2
1 3
1 4
4 5

输出样例

1

求出去掉哪一个点,剩下的联通块里最大的块尽可能的小。

树型DP之类的,还是dfs之类的,都行,求出去掉每个点之后剩下的最大的联通块的大小,然后找到最小的即可

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdio>
#include<vector>
#define N 100500
#define inf 999999999
using namespace std;
vector<int>G[N];
int n,m,sum[N],f[N];void dfs(int u,int fa){sum[u]=1;f[u]=fa;for(int i=0;i<G[u].size();i++){int v=G[u][i];if(v==fa)continue;dfs(v,u);sum[u]+=sum[v];}
}int main(){while(scanf("%d%d",&n,&m)!=EOF){int u,v,i,j,k;for(i=1;i<=n;i++)G[i].clear();for(i=0;i<m;i++){scanf("%d%d",&u,&v);G[u].push_back(v);G[v].push_back(u);}long long ans=inf,num;dfs(1,-1);for(u=1;u<=n;u++){int tmp=0;for(i=0;i<G[u].size();i++){v=G[u][i];if(v==f[u])continue;tmp=max(sum[v],tmp);}tmp=max(tmp,n-sum[u]);if(tmp<ans){ans=tmp;num=u;}}printf("%d\n",num);}return 0;
}

2014新生暑假个人排位赛06 D. 爱好和平相关推荐

  1. 【总结】2014新生暑假个人排位赛02

    A. 丁神去谷歌 2014新生暑假个人排位赛02 时间限制 1000 ms 内存限制 65536 KB 题目描写叙述 丁神要去Google上班了,去之前丁神想再做一道水题,但时间不多了,所以他希望题目 ...

  2. 2014新生暑假个人排位赛01 B. 学姐去学车

    B. 学姐去学车 时间限制 1000 ms内存限制 65536 KB 题目描述 趁着放假,学姐去学车好带学弟去兜风.但是学车真的很辛苦,每天五点半就要起床赶班车,但是学姐的教练更辛苦,他们要相同的时间 ...

  3. 2014新生暑假个人排位赛02 E. 木头人足球赛

    E. 木头人足球赛 时间限制 1000 ms 内存限制 65536 KB 题目描述 木头人星的行动速度是地球上乌龟的 1/10 (所以可以忽略移动的速度),可是他们也热爱运动,尤其是足球. 他们的足球 ...

  4. 2014年暑假学习笔记

    2014-7-3 System.getProperty("user.dir") 用户的当前工作目录 QPS每秒查询率(Query Per Second) 每秒查询率QPS是对一个特 ...

  5. 【weJudge】1106. [ACM][2014新生赛重现][现场]Gundam Unicorn

    你上有一门威力巨大的光束炮,然而它现在剩下的能量只能再发射一次.为了使敌人受到更大的损失,你必须谨慎地使用这仅剩的一次机会. 敌军队形和光束炮的覆盖范围均为矩形(矩形不可旋转). 输入要求 输入数据有 ...

  6. 【weJudge】1107. [ACM][2014新生赛重现][现场]啊~啊~,麻婆豆~腐,麻婆豆~腐~

    麻婆豆腐是小奏最爱的食物,为了做出最上等的麻婆豆腐,小奏准备了若干上等的食材,并且获得了传说中的麻婆豆腐的料理方法:每次将两种食材合二为一,成为一种新的食材,直到所有的食材都合并到一起,传说中的麻婆豆 ...

  7. 2014年暑假——英语清凉了夏季的炎热

    --题记 又是度过了这个城市中一年最热的季节,又是枯燥中夹杂着美丽的学英语的声音.暑假就这么仓促的过去了,是啊,当所有人在感慨时间飞快的时候,有这样一种人是在每天坚持着做一件事的,这样的人都是好样的. ...

  8. 暑假集训-8.06总结

    学习内容: 搜索 今日完成题数(不包含多校):4 今日看书情况:15页 今日心得:         今天学的是搜索,虽然以前学过,但书上讲的更具体些,         比如说如何去优化搜索的次数等   ...

  9. 【2019暑假集训】06.28比赛总结

    又回了省选组,A组的题目似乎是隔一天难一回,省选组一如既往地难. 比赛思路 contest(https://jzoj.net/senior/#contest/home/2788) T1(bitbit) ...

  10. 【2019暑假集训】06.29比赛总结

    临近回家,有一点心浮气躁 比赛思路 contest(https://jzoj.net/senior/#contest/home/2789) T1(树环转换):稍微思考之后可以发现求的是一棵树可以被分成 ...

最新文章

  1. 公有链和联盟链的本质不同
  2. pdf转word网站,亲测有效
  3. 后端系统开发之白名单机制
  4. android 动态设置View的高度和宽度,ViewTreeObserver使用
  5. red hat linux 安装oracle10g vm,oracle 10g 在 RED HAT ENTERPRISE LINUX 5下的安装
  6. Java比较器之Comparable接口与Comparator接口的使用
  7. 企业如何快速应对市场环境的不断变化
  8. 当前以太坊上DeFi协议总锁仓量为374.7亿美元
  9. ASP.NET Core 的启动和运行机制
  10. 每日工作记录——W5500网口ping中出现的问题
  11. NSSCTF部分复现
  12. 微信小程序跳转微信小程序,使用微信开发者工具的测试记录
  13. php nslookup,nslookup - 运维猫的个人空间 - OSCHINA - 中文开源技术交流社区
  14. 小球碰壁反弹加分_用Java实现小球碰壁反弹的简单实例(算法十分简单)
  15. 一周速递 | 总结既往,不是为了抱歉,是为了微笑明天
  16. Educational Codeforces Round 132 div.2 A-F题解
  17. 大数据Flink(十四):流批一体API Connectors JDBC
  18. matlab滤除某一频率的信号,设计一个matlab带通滤波器代码采样频率10Hz,滤除除0.9-1.1Hz之外的其他信号,信号输入为x1,输出为x2,不明白的问我可以追加条件,运行好使的追加分...
  19. 风机性能测试的软件设计,风机性能测试系统的设计与研究
  20. ehcache磁盘缓存说明

热门文章

  1. java怎么做rfif上位机软件,最简单的【上位机软件】详解
  2. cmake find_package 原理简介以及使用说明
  3. 新浪微博java sdk文档_新浪微博开放平台:java SDK介绍及使用说明
  4. 计算机插入的u盘文件打不开,U盘插入电脑显示盘符却打不开的解决方法
  5. html 的header标签和head标签
  6. VMware esxi6.7U3B安装镜像集成Realtek8168网卡驱动
  7. 【C语言】用C语言输出菱形
  8. 以“数”防疫,快速实施,两周落地,天翎疫情管理系统
  9. vue+antDesign实现树形数据展示并表格父子级选中和取消联动
  10. KS检验-如何理解KS检验中的p-value