最大利润数组c++多次出售
Maximum profit array c++ multiple sell
给定一个大小为n
的数组,该数组表示对象在n
天内的价格。每天你要么买一件物品,要么卖掉任何数量的物品来赚钱。假设你总能买到一件物品。只有当你有一些物品时,你才能出售。因此,为了最大限度地提高总利润,你必须选择特定的日期进行买卖。
例如。。N=10 arr={5,0,9,2,9,0,2,7,4,7}
,现在假设最初您拥有的对象总数为n=0;
,总利润为p= 0
第一天你没有任何物品,所以无论如何你都必须买一件。。n=1 , p=-5
,现在在第二天你可以买第二个,没有钱花,所以在第三天n=2
和p=-5
,你可以卖掉这两个物品并赚钱,所以n=0
和p=13
同样,我们可以继续前进,获得的最大利润将是35
请帮我回答这个问题。我已经看到了我们必须选择买卖日期的问题。。但这似乎对我有帮助,因为在这里,你每天都要买卖。。请给我一些如何进行的想法
如果你要保持价格的平均值,你总是可以在低于平均值时买入,在高于平均值时卖出。
你必须保留每天的总价格,所以第一天和第二天是5,第三天是14,以此类推
然后将其除以到目前为止经过的天数,因此14/3=4.66
如果当天高于平均水平,并且你有物品,就卖出。否则,请购买。
希望能有所帮助!
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组的地址分配给变量并删除
- 从C++本机插件更新Vector3数组
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 数组索引的值没有增加
- 将对象数组的引用传递给函数
- 为char数组调整zlib-zpipe
- 2D数组来自文本输入,中间有空格
- std::向量与传递值的动态数组
- 在c++中用vector填充一个简单的动态数组
- 使用strcpy将char数组的元素复制到另一个数组
- 使用指针从C++中的数组中获取最大值
- C++使用整数的压缩数组初始化对象
- 告诉一个 const char 数组,除了编译时 C 样式的字符串外,它不以 '