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平米的小单间,实习工资-衣食住行-杂七杂八的小消费差不 ...
随机推荐
- ImportError: No module named 'httplib'
原因:Python 2.x中的"httplib"模块在Python 3.x中变成了"http.client" 原代码: import httplib impor ...
- 微信小程序wxml和wxss样式
对于css不熟悉的android程序员来说,开发微信小程序面临的一个比较困难的问题就是界面的排版了.微信小程序的排版就跟wxml和wxss有关了,它们两者相当于android的布局文件,其中wxml指 ...
- (水题)洛谷 - P1579 - 哥德巴赫猜想(升级版)
https://www.luogu.org/problemnew/show/P1579 先预处理出素数看看有多少个,大概才2500个不到(事实上素数的个数大约是 $\frac{n}{ln(n)}$ ) ...
- python 之 配置环境变量、通过pip 安装第三方库
配置环境变量 右击桌面上的“此电脑”—>“属性”—>“高级系统设置”—>右下角“环境变量”—>双击“系统变量”里的“Path”—>点击“新建”—>输入python的 ...
- = =写个prim希望能够巨巨们看的懂
prim算法---典型的贪心算法 求最小生成树的算法 (Minimum Spanning Tree)最小生成树: 算法思想:设图G顶点集合为U,首先任意选择图G中的一点作为起始点a,将该点加入集合V, ...
- HDOJ4857【拓扑排序】
首先 CLJ ORZ 这道题做了两次,第一次瞎搞... 第二次,好吧,骄傲地说水过... 题意:不说了: 思路: 题目默认是小的在前面,那么就是反向建图,每次排序拿大的出来: 第一次做的时候,我记得我 ...
- Hibernate绑定session保证session为单线程操作
- safari 日期显示NAN
解决方案: 1.服务器端将时间转换为时间戳,前端再进行处理,问题解决. fastjson,JSON.toJSONString() 自动将时间字段转换为时间戳类型,然后传到前端. @RequestMap ...
- Oracle 查询约束信息
select * from user_constraints where table_name=''; select * from user_cons_columns;
- php分页例子实现读取mysql数据分页显示
以下代码是PHP分页案例,测试通过,主要是PHP+mysql实现分页,代码来处百度空间,有兴趣看的话可以了解一下PHP是如何分页的? <?php $link = mysql_connect(&q ...