#include<cstdio>
#include<cstdlib>
typedef struct ufse *ufset;
struct ufse
{
int parent[];
int root[];
}UFS;
int max;
int find(int e,ufset u)
{
if(e!=u->parent[e])
u->parent[e]=find(u->parent[e],u);//递归缩短路径
return u->parent[e];
}
void ufnion(int i,int j,ufset u)
{
if(i!=j)
{
u->parent[i]=j;
u->root[j]+=u->root[i];
if(u->root[j]>max)
max=u->root[j];
}
} int main()
{
ufset u;
int i;
u=(ufset)malloc(sizeof(UFS)); int n,a,b;
while(scanf("%d",&n)!=EOF)
{
for(i=;i<=;i++)
u->parent[i]=i,
u->root[i]=;
max=;
for(i=;i<n;i++)
{
scanf("%d %d",&a,&b);
ufnion(find(a,u),find(b,u),u);
}
printf("%d\n",max);
}
return ;
}

用到递归缩短路径!并查集新思路!

HDOJ 1856的更多相关文章

  1. 并查集(HDOJ 1856)

    并查集   英文:Disjoint Set,即“不相交集合” 将编号分别为1…N的N个对象划分为不相交集合, 在每个集合中,选择其中某个元素代表所在集合. 常见两种操作: n       合并两个集合 ...

  2. HDOJ 1856 More is better

    转自:wutianqi http://www.wutianqi.com/?p=1069 tag:并查集 #include <iostream> using namespace std; # ...

  3. hdoj 1856 More is better【求树的节点数】

    More is better Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 327680/102400 K (Java/Others) ...

  4. Hdoj 1856.More is better 题解

    Problem Description Mr Wang wants some boys to help him with a project. Because the project is rathe ...

  5. 杭电hdoj题目分类

    HDOJ 题目分类 //分类不是绝对的 //"*" 表示好题,需要多次回味 //"?"表示结论是正确的,但还停留在模块阶 段,需要理解,证明. //简单题看到就 ...

  6. HDOJ 题目分类

    HDOJ 题目分类 /* * 一:简单题 */ 1000:    入门用:1001:    用高斯求和公式要防溢出1004:1012:1013:    对9取余好了1017:1021:1027:   ...

  7. HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序

    FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  8. HDOJ 2317. Nasty Hacks 模拟水题

    Nasty Hacks Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tota ...

  9. HDOJ 1326. Box of Bricks 纯水题

    Box of Bricks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

随机推荐

  1. ThreadLocal模式的核心元素

    首先来看ThreadLocal模式的实现机理:在JDK的早期版本中,提供了一种解决多线程并发问题的方案:java.lang.ThreadLocal类.ThreadLocal类在维护变量时,世纪使用了当 ...

  2. nginx 日志怎么实现显示真实客户端IP

    这篇文章页不错: http://www.tuicool.com/articles/E32mYf 假如说我们现在的架构是,nginx做反向代理,apache做web服务器.那么我们怎么让我的web服务器 ...

  3. .net架构设计读书笔记--第二章 第7节 神化般的业务层

    一.编排业务逻辑的模式1. 事务脚本模式TS(The Transaction Script pattern ) TS模式概述     TS 鼓励你跳过任何的面向对象的设计,你直接到所需的用户操作的业务 ...

  4. 整数划分 (区间DP)

    整数划分(四) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近 ...

  5. Java 关键字 native

    native 关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件中,而是在用其他语言实现的文件中.Java语言本身不能对操作系统底层进行访问和操作,但是可以通过JNI接口调用其他语言 ...

  6. Java-优化技术

    常用的: 1.优化循环.通过重新组织重复的子表达式来提高循环体的运行性能. 2减少使用对象的数量来提高运行性能. 3.缩减网络传输数据来缩短等待时间. 其他: 1.采用对象池技术,提高对象的利用效率. ...

  7. Spring与jsp表达式的产生的问题

    今天遇到一个问题就是Spring标签与jsp表达式的问题 直接上代码 <form:form commandName="book" action="/book_upd ...

  8. POJ1088滑雪(dp+记忆化搜索)

    滑雪 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 86411   Accepted: 32318 Description ...

  9. #pragma预处理实例

    1.#include <stdio.h>#if defined(ANDROID20)    #pragma message("Compile Android SDK 2.0... ...

  10. 线性判别分析(LDA)准则:FIsher准则、感知机准则、最小二乘(最小均方误差)准则

    准则 采用一种分类形式后,就要采用准则来衡量分类的效果,最好的结果一般出现在准则函数的极值点上,因此将分类器的设计问题转化为求准则函数极值问题,即求准则函数的参数,如线性分类器中的权值向量. 分类器设 ...