编写函数 maxIncrease,用于计算一个销售额序列中的最大销售增幅并返回。这里的销售额都是非负整数C++
时间: 2023-06-26 16:06:31 浏览: 226
以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int maxIncrease(vector<int>& sales) {
if (sales.empty()) {
return 0;
}
int maxIncrease = 0;
int currentMax = sales[0];
for (int i = 1; i < sales.size(); i++) {
int increase = sales[i] - currentMax;
if (increase > maxIncrease) {
maxIncrease = increase;
}
if (sales[i] > currentMax) {
currentMax = sales[i];
}
}
return maxIncrease;
}
int main() {
vector<int> sales = {5, 8, 2, 6, 9, 1, 4, 7};
cout << maxIncrease(sales) << endl; // 输出结果为 7
return 0;
}
```
上述代码中,我们首先判断了输入的销售额序列是否为空,如果为空则直接返回0。接着使用 `maxIncrease` 变量记录最大销售增幅,使用 `currentMax` 变量记录当前最大销售额。然后遍历整个销售额序列,计算当前销售额与当前最大销售额的差值,如果这个差值比 `maxIncrease` 还要大,则更新 `maxIncrease` 的值。最后,如果当前销售额比当前最大销售额还要大,则更新 `currentMax` 的值。最终返回 `maxIncrease` 的值。
阅读全文