首页 > 有一道题目面试中碰到的,不会做,这边想问下怎么做呢?
头像
baolvpang
编辑于 2022-02-13 03:50
+ 关注

有一道题目面试中碰到的,不会做,这边想问下怎么做呢?

桌子上有n个瓶子,瓶子编号从1到n,第i个瓶子里装mi克(mi为非负整数)的水,小明每次选择一个区间【i,k】(1<=i<=k<=n)编号中的水瓶,并将每个水瓶里的水放出1克,希望你设计一种方法,使小明可以在最少的次数里将所有瓶子里的水放完。
样例:
5个瓶子
每个瓶子分别装水 3 4 2 3 1
一个可行方案
【1,5】
【1,4】
【1,2】
【2,2】
【4,4】
小明要5次能把所有水放完
输入包括两行 格式为:
5
3 4 2 3 1
输出一个整数
5

请各位大佬给个思路或者简单的代码就可以,我的思路是感觉随着水越来越少,数组会被分成好几份,然后次数也就会变多,但是怎么算法实现没想出来。

更多模拟面试

全部评论

(2) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

近期精华帖

热门推荐