股票买卖
分析:
1.看相邻两天(一定是两天两天地看),如果后一天价格大于这一天,那么就可以在这一天买入,后一天卖出。
2.因为任何一个跨越多天的交易都可以拆分成多个相邻天数的交易。
第1,2天比较:第1天买入,第2天卖出。第2,3天比较:第2天再买入,第3天卖出。
和第1天买入,第3天卖出效果一样。
3 4 5
买 卖完再买 卖
第1,2天比较:不买。第2,3天比较:第2天买入,第3天卖出。
3 1 4
买入 卖出
//相邻两天 后>前 则交易一次
//任何一个相差多天的交易 可以拆分成多个相邻的交易
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 100010;
int n;
int price[N];
int main()
{
scanf("%d", &n);
for (int i = 0; i < n; i ++ )
scanf("%d", &price[i]);
int res = 0;
for (int i = 0; i + 1 < n; i ++ )
{
//先处理了才能比较前后两者大小,之后再决定加不加
int dt = price[i + 1] - price[i]; //相邻两个
if (dt > 0) //如果满足条件
res += dt; //就把买卖结果加入
}
printf("%d\n", res);
return 0;
}