题目链接

时间限制: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. Windows Server 2008 R2 SP1 安装NET FrameWork 4.0 受阻滞问题解决办法。
  2. java 修改商品如何实现的_Javaweb-案例练习-5-商品数量修改和合计金额实现
  3. 一个悄然成为世界最流行的操作系统诞生!
  4. Oracle增大redo log file的方法
  5. 测试心得:细说从逻辑到数据的用例设计
  6. Makefile 管理工具 — Automake and Autoconf
  7. KNX转485模块的开发
  8. 简单有效的记录日常收支
  9. 行业案例 | 数据分析在银行业应用之欺诈检测
  10. gsm在linux下工作原理,GSM模块详解 从工作原理到应用案例
  11. 计算机快速看图教程,CAD快速看图使用电脑版软件操作教程
  12. 支付宝提现,单笔转账到支付宝账户
  13. python网络爬虫笔记
  14. 四款功能强大的优质app合集,总有一个能给你带来帮助!
  15. traffic control 之 egress 队列
  16. 基于python-opencv给图像添加水印
  17. 【工业大数据】工厂大数据之数据源分析;如何挖掘并驾驭大数据的价值,成为“大数据企业”?
  18. 解决tomcat安装配置后localhost 打不开
  19. 计算机音乐数字谱抖音,抖音计算器谱子有哪些?计算器音乐乐谱大全
  20. 【黄啊码】浅谈PHP入门|如何学习PHP

热门文章

  1. 如何通过数据包套接字攻击Linux内核?
  2. SQL语句集锦 [转]
  3. cadence软件问题解决集
  4. 金融去杠杆环境下,请聆听麦子金服财富投资者给出的答案
  5. 使用Python进行12306抢票
  6. docer实战linux和windows配置mysql,redis,nginx
  7. 关于利用51单片机实现篮球记分牌功能的概述
  8. 南开hpd openbilibili
  9. CheckBox和ListView的结合使用
  10. python调用百度api实现摄像头识别文字