三星研发班加罗尔面试经历 |横向聘用(6个月经验)
这是一项专业级别的编码测试,我们有 4 个小时的时间来解决一个问题。
有一条高速公路在 N (4<=N<=100) 处损坏。每个损坏位置由一个数字 a (0<=a<=10000) 表示。您需要用沥青修复这些损坏。使用以下规则修复损坏:
- 沥青可以以最小的 K (1<=K<=10000) 铺展在道路上,即每次铺设沥青时,它将被铺展到 k 个连续的位置。例如。如果损坏位于位置 2、5 和 K=3,则第一个沥青铺展是从 0-2 或 1-3 或 2-4 开始,第二个是从 3-5 或 4-6 或 5-7 开始。
- 您需要散布最少的沥青来修复道路的所有损坏位置。对于上面的示例,所需的最小沥青是 4 个单位(2-4 和 3-5),因为 3-4 是重叠的。
示例测试用例:
输入:-
NK
A[0] A[1] …….. A[N-1]
输出:-
修复所有损坏的最小沥青面积。
1.
10 2
0 10 2 12 4 14 6 16 8 18
输出:15
2.
4 3
3 9 11 8
输出:7
3.
8 3
2 7 20 5 19 9 6 22
输出:12
如果问题有任何混淆,请告诉我!