华为机试题
第一题(100分)
-
题目描述
给出一行字符串,包含2组年月日,通过“|”进行分隔,年月日之间通过一个空格进行分隔,其中仅第一组的年月日包含星期几,请推算出第二组的年月日对应星期几 -
输入描述
一行包含2组年月日的字符串。 -
输出描述
计算的结果,类型为字符。 -
示例
- 输入
1980 01 02 5| 1980 01 04
- 输出
7
- 说明
输入表示1980年1月2日,星期五,请推算出1980年1月4日是星期几,输出7,表示星期日。注意这里指定1980年1月2日,星期五,可能不是正常日期中的星期,不用尝试去校验1980年1月2日星期五是否正确。
第二题(200分)
-
题目描述
一条道路上有几个固定位置的路灯,路灯需要照亮道路所有公交站;现在给出道路上所有公交站和路灯的位置序号,公交站和路灯均按照位置序号排列在道路上。
计算路灯亮度(指路灯位置序号到公交站位置序号的距离)调节到多少,才能照亮道路上所有的公交站。 -
输入描述
第一行表示公交站位置序号,逗号分隔
第二行表示路灯位置序号,逗号分隔 -
输出描述
输出路灯最小亮度 -
示例
- 输入
3,1,4,2
3
- 输出
2
第三题(300分)
租书屋的老板打算进一批新书,选出了n本价格相同的书作为备选,并给VIP读者发了一批调查问卷,收集到每位读者想看的书的列表。为了节省采购成本,老板决定在保证每位VIP读者至少有1本喜欢的书在采购清单的前提下,最小化采购费用。现把书和读者都从0开始编号,整理出读者想看的书的列表为b,请输出最少的采购书本数量。
-
输入描述
第一行为书本数;第二行为读者数;第三行为读者想看书的列表b,每行至少包含1本书的id,多本书的id之间用1个空格分隔。注意:
1、题目保证输入合法性。
2、1 <= n <= 100 -
示例
- 输入
5
3
1 2
2
3 4
- 输出
2
- 说明
5本书,3个读者,
购买编号为2的书同时满足读者0和1;
购买编号为3或者4的书满足读者2;
最少购买的书本数量为2;