华为机试,刚考完,没答出来,求解答
今天华为机试,有2道题没答出来。求大佬们来解答
1,有一排树木,按编号1,2,3.......,总共有m颗树,会死掉n颗,这n颗的编号假如为2,4,6......,现在会给你k颗树去补掉已死的,
请问求补完之后,连续数最大的长度。
例子:
输入
5 -------开始树的总数
2 -------死掉2颗
2 3 --------死掉的编号2,3
1 --------可以补1颗树
输出
3
(即一开始有1,2,3,4,5 树,会死掉2颗,编号为2,3,能补上1颗,则在补上之后最大连续为3,4,5,所以长度是3)
还有一题:
有一堆书,要是书的长宽都大于(不是>=,是>)另外一本书,则可以叠放上面,求最大叠的层数
例子:
输入
[[20,16],[15,11],[10,10],[9,10]] (里面的每一个数组都代表一本书)
输出 3
两道题的格式:
public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // TODO......... } }