Amazon SDE 2 在线算法算试题
Problem 1:
有一个包含 N 场音乐会的列表。每场音乐会有开始时间、持续时间、以及参加人数作为 volume。
你需要找出多个不重叠时间段中,能获得的最大总 volume。
示例:
startTime = {10,5,15,18,30}
duration = {30,12,20,35,35}
volume = {50,51,20,25,10}
输出:
76
选择第 2 个(start at 5,持续 12)和第 4 个(start at 18,持续 35),volume 之和为 51+25=76,是最大可能值。
Problem 2:
给定一个包含 n 台服务器的列表,powers[i]
表示第 i 台服务器的算力。
客户想购买其中的 K 台,要求:
- 重新排列后,相邻服务器算力的绝对差值不超过 1;
- 这些服务器将构成一个环形网络,所以首尾也算相邻。
请找出最多能选出多少台服务器(即最大可能的 K)。
示例:
powers = {4,3,5,1,2,2,1}
输出:
5
例如选择 {3,1,2,2,1},重新排列成 {2,1,1,2,3},满足题目要求。