题目链接

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述

凤凰于飞,翙翙其羽,亦集爰止。凤凰于飞,翙翙其羽,亦集爰止。
《诗经·卷阿》
传说,凤凰是百鸟之王。有一天,凤凰要召开百鸟大会,百鸟国是一个由n个节点组成的树,每个节点有一只鸟,开会的节点定在1号节点。每只鸟可以花费1s通过一条边,由于每根树枝(边)的载重有限,只允许一只鸟同时通过。作为会议的策划师,HtBest想知道百鸟国的所有鸟在1点集合最少需要多少秒。

输入描述:
第一行有一个正整数n,表示百鸟国节点个数。
接下来n-1行,第i行两个正整数ai,bi用空格隔开,表示树上节点ai,bi之间有一条边。
输出描述:
第一行一个整数,表示集合最少需要的时间。
示例1
输入

3
1 2
2 3

输出

2

示例2
输入

3
1 2
1 3

输出

1

示例3
输入

4
1 2
2 3
2 4

输出

3

备注:
对于100%的测试数据:
1 ≤ n ≤ 1000000
数据量较大,注意使用更快的输入输出方式。


该题为只需要计算根节点的直接子树中最大的节点数即可,所以可以用并查集进行分类
由于数据量较大,不能用scanner输入,这里采用BufferedReader读入
ac代码

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;public class Main {public static void main(String args[]) throws IOException {BufferedReader sc = new BufferedReader(new InputStreamReader(System.in));int n = Integer.parseInt(sc.readLine());int bc[] = new int [1000005];while(--n>0) {String s[] = sc.readLine().split(" ");int a = Integer.parseInt(s[0]);int b = Integer.parseInt(s[1]);if(a!= 1&&b!=1) {u(a,b,bc);}}int max = -1;max = max(bc);System.out.println(-max);}private static int max(int[] bc) {int max=0;for(int i = 0;i<=1000000;i++) {if(max>bc[i]) {max = bc[i];}}return max;}private static int find(int a, int bc[]) {if(bc[a] == 0) {bc[a] = -1;return a;}else if(bc[a]<0) {return a;}else {return find(bc[a],bc);}}private static void u(int a, int b, int bc[]) {int ra = find(a, bc);int rb = find(b, bc);if(ra != rb) {if(bc[ra]<bc[rb]) {bc[ra] = bc[ra]+bc[rb];bc[rb] = ra;}else {bc[rb] = bc[ra]+bc[rb];bc[ra] = rb;}}}}

牛客网练习赛24B 凤凰相关推荐

  1. 牛客网练习赛26B(简单的dp)

    题目链接:https://www.nowcoder.com/acm/contest/180/B 链接:https://www.nowcoder.com/acm/contest/180/B 来源:牛客网 ...

  2. 牛客网练习赛34-A题

    题目https://ac.nowcoder.com/acm/contest/297/A链接 链接:https://ac.nowcoder.com/acm/contest/297/A 来源:牛客网 不知 ...

  3. 牛客网练习赛34-b题

    题目链接https://ac.nowcoder.com/acm/contest/297/B 链接:https://ac.nowcoder.com/acm/contest/297/A?&head ...

  4. 牛客网练习赛15__吉姆的奇思妙想

    吉姆的奇思妙想 题目描述 吉姆是个热爱算法竞赛的小朋友,平常的休闲活动就是刷 牛客网 的题目. 当吉姆刷到  wannafly挑战赛12 F.小H和圣诞树  这题时,颇为震惊,因为这是他第一次在wan ...

  5. 牛客网练习赛44-B(快速幂+模拟)

    题目链接:https://ac.nowcoder.com/acm/contest/548/B 题意:计算m/n小数点后k1位到k2位,1≤m≤n≤109,1<=k1<=k2<=109 ...

  6. 牛客网练习赛7--购物 动态规划

    题意: 在遥远的东方,有一家糖果专卖店. 这家糖果店将会在每天出售一些糖果,它每天都会生产出m个糖果,第i天的第j个糖果价格为C[i][j]元. 现在的你想要在接下来的n天去糖果店进行选购,你每天可以 ...

  7. 三角形周长和【牛客网】牛客网练习赛60

    题目传送 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format:%lld 题目描述 输入描述: 输入描述 第一行一个整 ...

  8. 牛客网练习赛36 Ribbit的数列 分块

    题目描述 Rabbit得到了一个长度为N的数列(数列编号从0到N−1).数列中每个数vali满足1<=vali<=C. 初始时数列中每个数均为1,现在Rabbit要对这个数列进行Q次操作, ...

  9. 牛客网 牛客练习赛13 A.幸运数字Ⅰ

    A.幸运数字Ⅰ 链接:https://www.nowcoder.com/acm/contest/70/A 来源:牛客网 水题. 代码: 1 #include<iostream> 2 #in ...

最新文章

  1. 2019最新进展 | Transformer在深度推荐系统中的应用
  2. 深度分享:世界顶级神经科学家王小勤教授CCL 2018主旨报告(PPT全文,经报告人同意发布)...
  3. JS编程建议——7:小心保留字的误用
  4. navicat创建计算列_Tableau Part 9 计算字段amp;粒度聚合比率amp;表计算
  5. oracle insert 新增语句
  6. 【32位win7一键扫雷】32位win7系统自带扫雷游戏逆向分析之一键扫雷(附VS代码工程文件、可执行文件和OD分析缓存文件)
  7. zookeeper专题:zookeeper集群模式下,leader选举流程分析
  8. hadoop yarn 集群配置
  9. 15.三数之和-LeetCode
  10. iOS各个版本的新特性介绍
  11. List数据转Map数据并进行分组排序
  12. 小爱mini改aux立体声_拆解报告:Redmi小爱音箱Play
  13. STL vector使用方法介绍
  14. 运营商iptv服务器,IPTV 服务器
  15. c++ 聚合/POD/平凡/标准布局 介绍
  16. python工资条教程_这才是史上最简单的工资条制作方法
  17. 基于Cycle Spinning的移不变小波去噪
  18. 跑车html5网页模板,html5代码画兰博基尼跑车,6不6?
  19. 【解决方案】Ubuntu设置Matlab桌面启动快捷方式
  20. JMockit didn't get initialized

热门文章

  1. 大牛揭秘:如何快速在阿里云搭建视频直播平台
  2. 统计学三大相关系数之Pearson相关系数、Spearman相关系数
  3. Android5.1.1-高通msm8916平台添加Etehrnet。(驱动+上层framworks)
  4. oracle10g rman备份有效性,Oracle 10g RMAN的备份 恢复
  5. 两个一维数组合成二维数组
  6. 【红外遥控器】基于FPGA的学习型红外遥控器verilog开发
  7. MySQL数据库笔记
  8. Python之读取MongoDB导出的BSON文件
  9. 模板编码方法(template method)
  10. 884.两句话中的不常见单词