题目(羊吃草):
假设有一群羊,吃一片草堆。
- 一个羊单位时间能够吃掉一个单位的草堆;
- 同一时间内一个草堆只能被一个羊吃;
- 羊群只能由近到远的吃草堆,吃完近处的草堆才能去吃远处的草堆。
羊的个数 n , 1 < n < 1000;
草堆堆数t, 0 < t < 100000;
单个草堆的大小k, 0 < k < 10000;
请问吃完所有的草堆需要花多长时间?
输入 (n, [list])
举例1:
草堆数组:[1, 2, 3, 2]
羊个数:3
总的时间:3
举例2:
草堆数组:[2, 19 , 3, 22 ,3 ,10, 22]
羊的个数:4
总的时间:27
解题思路
累加+找最小数。
建立一个数组,大小等于羊的个数,找到最小数,遍历草堆的每个元素,每次累加到羊数组的最小的位置。最后,结果为数组里面的最大数。
int summary(int n, vector<