6个朋友(codevs 2832)
有这么一种说法:认识6个人,你就认识全世界的人。
Aiden现在有一张关系图,上面记载了N个人之间相互认识的情况。Aiden想知道,他能否只认识6个人就能间接认识这N个人呢?
第一行,两个数N,M,表示有N个人,M对认识关系。
接下来的M行,每行两个数ai,bi,表示ai与bi相互认识。
不保证认识关系不出现重复,保证ai≠bi。
N个人的编号为1...N。
若只认识6个人就能间接认识这N个人,则输出“^_^”。
若不行,则第一行输出“T_T”,第二行输出认识6个人最多能间接认识的人的个数。
输出不包括引号。
6 7
1 2
1 3
2 4
3 5
4 6
5 6
3 2
^_^
对于30%的数据,保证0<n≤1000。
对于50%的数据,保证0<n≤5000。
对于100%的数据,保证0<n≤10000,m≤10*n。
//并查集
#include<cstdio>
#include<iostream>
#include<algorithm>
#define M 10010
using namespace std;
int fa[M],num[M];
int find(int x)
{
if(fa[x]==x)return x;
return fa[x]=find(fa[x]);
}
int main()
{
int n,m;
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
fa[i]=i;
for(int i=;i<=m;i++)
{
int x,y;
scanf("%d%d",&x,&y);
int a=find(x);
int b=find(y);
if(a!=b)fa[a]=b;
}
int ans=;
for(int i=;i<=n;i++)
{
if(find(i)==i)ans++;
num[find(i)]++;
}
if(ans<=)printf("^_^");
else
{
printf("T_T\n");
sort(num+,num+n+);
int p=,tot=;
for(int i=;i<=n;i++)
{
if(ans-p<=)break;
if(num[i])
{
p++;
tot+=num[i];
}
}
printf("%d",n-tot);
}
return ;
}
6个朋友(codevs 2832)的更多相关文章
- T2832 6个朋友 codevs
http://codevs.cn/problem/2832/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 有这么一种说法: ...
- DP+单调队列 codevs 1748 瑰丽华尔兹(还不是很懂具体的代码实现)
codevs 1748 瑰丽华尔兹 2005年NOI全国竞赛 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题解 题目描述 Descripti ...
- codevs 1506 传话
http://codevs.cn/problem/1506/ 1506 传话 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题解 题目描述 D ...
- codevs 搜索题汇总(青铜+白银级)
1792 分解质因数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题目描述 Description 编写一个把整数N分解为质因数乘积的程序. 输入描 ...
- codevs 2639 约会计划
codevs 2639 约会计划 题目描述 Description cc是个超级帅哥,口才又好,rp极高(这句话似乎降rp),又非常的幽默,所以很多mm都跟他关系不错.然而,最关键的是,cc能够很好的 ...
- Codevs 3409 搬运礼物
3409 搬运礼物 CodeVS原创 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 青铜 Bronze 题解 题目描述 Description 小浣熊松松特别喜欢交 ...
- T2597 团伙 codevs
http://codevs.cn/problem/2597/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 1920年的芝加 ...
- T2639 约会计划 codevs
http://codevs.cn/problem/2639/ 题目描述 Description cc是个超级帅哥,口才又好,rp极高(这句话似乎降rp),又非常的幽默,所以很多mm都跟他关系不错.然而 ...
- codevs——T1169 传纸条
http://codevs.cn/problem/1169/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 De ...
随机推荐
- udp内网穿透 两个内网互联
1,在有外网ip的机器上启动server. package udp; import java.net.DatagramPacket; import java.net.InetSocketAddress ...
- Spring学习3—控制反转(IOC)Spring依赖注入(DI)和控制反转(IOC)
一.思想理解 Spring 能有效地组织J2EE应用各层的对象.不管是控制层的Action对象,还是业务层的Service对象,还是持久层的DAO对象,都可在Spring的 管理下有机地协调.运行.S ...
- structs2标签简单实用,及自定义转换器示例代码
一.在structs.xml中配置 <structs> <package name="tagp" namespace="/test" exte ...
- 【wget】一条命令轻松备份博客(包括图片)
h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...
- find只查当前目录 和 -exec和xargs区别
1.find默认查找当前目录和子目录,通过maxdepth限制只查当前目录: find . -maxdepth 1 -type f -name "*.php" 2. find . ...
- myBatis 实现用户表增删查改操作<方法1 没有使用接口的>(最终版)
在UserMapper.xml中添加增删改查 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYP ...
- java 打包过程及如何使用第三方jar包
地址:http://wenku.baidu.com/view/44a1bbed81c758f5f61f6779.html或者 http://wenku.it168.com/d_000575231.sh ...
- DROP TABLE ** CASCADE CONSTRAINTS PURGE删除表的时候级联删除从表外键
1.关于 cascade constraints 假设A为主表(既含有某一主键的表),B为从表(即引用了A的主键作为外键). 则当删除A表时,如不特殊说明,则 drop table A 系统会出现错误 ...
- UVALive 6125 I’ve Got Your Back(gammon) 题解
http://vjudge.net/problem/viewProblem.action?id=37481 East Central Regional Contest Problem D: I’ve ...
- Eclipse启动Tomcat,45S超时问题解决
在Eclipse中启动Tomcat服务器时,经常由于系统初始化项目多,导致出现45秒超时的Tomcat服务器启动错误. 以前我一般通过找到XML配置文件,将对应Timeout为45的值,修改为 ...