题目描述
LZY经过自己的不懈努力,终于达成了炒股一年亏损一百万的成就。由于他濒临破产,希望你能带他狠狠的赚一笔回本。他现在委托钞能力者获得了未来N天的股票价格,他只能在未来N天中买入和卖出一次股票,请问他最多能赚多少?
输入
测试样例由多组测试数据组成。每组测试数据第一行输入一个正整数 n ( 1 <= n <= 10000 ) 代表钞能力者告诉了他未来n天的股票价格,第二行输入n个数字ai ( 1 <= ai <= 100000 ),代表每天股票的价格。
输出
输出LZY最多能够赚取的收益
原本是用数组写的,但爆了,只好想点歪脑筋的笨方法。OK,Its My Time。
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m,x,y,z,k;
ios::sync_with_stdio(false);
while(cin>>n){
m=0;
y=10001;
z=0;
for(int i=0;i<n;i++){
cin>>x;
if(i==0){
y=x;
z=x;
}
if(x>z){
z=x;
k=z-y;
m=max(m,k);
}
if(x<y){
y=x;
z=x;
}
}
cout<<m<<endl;
}
return 0;
}