2019_京东JAVA实习生招聘机试第一题

题意抽象出来就是,求根节点的所有子节点中,以这些子节点为根的子树的最大节点数。
已有向图的方式来保存无向图,所以叶子结点i的eage[i].size()==1。
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner; public class Main {
public static boolean flag[] = new boolean[100002]; //置零
public static int gettime(int root, List<List<Integer>> eage){
if(eage.get(root).size() == 1)
return 1;
int time=0;
for(int i=0; i<eage.get(root).size(); i++){
int son = eage.get(root).get(i);
if(flag[son]==false){
flag[son] = true;
time += gettime(son, eage);
}
}
return time+1;
} public static void main(String[] args)
{
Scanner in = new Scanner(System.in); int n = in.nextInt();
List<List<Integer>> list = new ArrayList<>();
for(int i=0;i<=n;i++){
list.add(new ArrayList<>());
}
for(int i=0; i<n-1; i++)
{
int a = in.nextInt();
int b = in.nextInt();
list.get(a).add(b);
list.get(b).add(a);
}
if(n==1){
System.out.println(0);
return;
}
int res=0;
flag[1]=true;
for(int i=0; i<list.get(1).size(); i++){
flag[list.get(1).get(i)]=true;
int temp = gettime(list.get(1).get(i), list);
//System.out.println(temp);
res = Math.max(temp, res);
}
System.out.println(res);
return ;
}
}
2019_京东JAVA实习生招聘机试第一题的更多相关文章
- 微软2014实习生招聘笔试第2题 the k-th string
Time Limit: 10000msCase Time Limit: 1000msMemory Limit: 256MB Description Consider a string set that ...
- 题目1205:N阶楼梯上楼问题(2008年华中科技大学计算机保研机试真题:递推求解)
题目1205:N阶楼梯上楼问题 时间限制:1 秒 内存限制:128 兆 特殊判题:否 提交:2447 解决:927 题目描写叙述: N阶楼梯上楼问题:一次能够走两阶或一阶,问有多少种上楼方式. (要求 ...
- Java第三次作业第一题
1.[请复制本程序,作为java程序代码,进行编译,补充填写缺失代码部分,并实现题目要求功能,从而获得空白填写所需的内容.] 编写无限计时程序,从0:1开始计时,一直循环计时,计时到60秒,变为1:0 ...
- S2 深入.NET和C#编程 机试测试错题积累
机试第一题: //创建文件流(路径 模式) FileStream fa = new FileStream(@"D:\\S2第一次全文 ...
- 保研机试训练[bailianoj]
site:http://bailian.openjudge.cn/xly2018/ 1.计算任意两天之间的天数 思路:以0为起始点计算天数,然后相减即可.这样的编码复杂度会减少很多. #include ...
- java机试要点
Java机试准备 一般结构: import java.util.Scanner; public class Main{ public static void main(String[] args) ...
- 华为JAVA机试流程
1.JAVA机试流程:①打开IE浏览器,输入机试系统IP地址(以当天告知的地址为准):②输入姓名.手机,选择“C/C++”或“JAVA”,登录:③登录后显示题目,阅读题目并点击页面最下方的“下载框架文 ...
- Java实习生面试总结
之前写了一直存着当草稿,今天看了看. --------------------------------------------------------------------------------- ...
- 从走出校门到Java实习生生活
序 男,95年,这个学期就大四了,非计算机专业(数字媒体).目前在二线城市做Java实习生,待遇一般,应该算一个正常的实习生水平吧:租的一个约10平米的小单间,实习工资-衣食住行-杂七杂八的小消费差不 ...
随机推荐
- [Selenium] Actions.doubleClick
WebElement el = page.getTable_AssetMixesName().get(index); Actions action = new Actions(driver); act ...
- 【转】Chrome headless 模式
原文地址: http://www.cnblogs.com/fnng/p/7797839.html 我们在通过Selenium运行自动化测试时,必须要启动浏览器,浏览器的启动与关闭必然会影响执行效率,而 ...
- sublime 插件:Emmet
Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: ...
- HDU 1207 汉诺塔II (简单DP)
题意:中文题. 析:在没有第四个柱子时,把 n 个盘子搬到第 3 个柱子时,那么2 ^ n -1次,由于多了一根,不知道搬到第四个柱子多少根时是最优的, 所以 dp[i] 表示搬到第4个柱子 i 个盘 ...
- The IBM Blockchain Platform: Develop pre-requisites
Installing pre-requisites The IBM Blockchain Platform: Develop pre-requisites can be installed on Ub ...
- 洛谷 - P1115 - 最大子段和 - 简单dp
https://www.luogu.org/problemnew/show/P1115 简单到不想说……dp[i]表示以i为结尾的最大连续和的值. 那么答案肯定就是最大值了.求一次max就可以了. 仔 ...
- HDU6069:Counting Divisors(因子数统计|区间筛)
题意 计算\(\sum_{i=l}^kd(i^k)(d_i代表i的因子数)\) 分析 比赛搞了3个小时都没搞出来,有两个思维上的trick 1.要先遍历素数,再遍历[L,R],而不是枚举每个数,然后对 ...
- bzoj 3697: 采药人的路径【点分治】
点分治,设当前处理的块的重心为rt,预处理出每个子树中f[v][0/1]表示组合出.没组合出一对值v的链数(从当前儿子出发的链),能组合出一对v值就是可以有一个休息点 然后对于rt,经过rt且合法的路 ...
- bzoj 2927: [Poi1999]多边形之战【博弈论】
先手必胜状态是黑三角在边上 然后其他情况脑补一下,n为偶数先手必胜,可以理解为从某一边取,先手总有办法让后手取得一边有奇数个 #include<iostream> #include< ...
- 洛谷P2564 [SCOI2009]生日礼物(单调队列)
传送门 准确的来说这个应该叫尺取法? 先对所有的点按$x$坐标进行排序 我们维护两个指针$l,r$,每一次令$r$不断右移直到所有颜色齐全,再不断右移$l$直到颜色数不足,那么此时$[l-1,r]$这 ...