问题标题: 酷町堂:7093 邮票交易(trading)

0
0
已解决
李牧晓
李牧晓
中级天翼
中级天翼

题目描述 Description

四牌楼青云楼有一个邮票交易市场。给定某一枚邮票连续N天的价格,如果只允许交易一次,即先买入一次,后卖出一次,求最大的收益。没有合适的买入和卖出时机的话,可以不交易,大不了收益为0,也不能做亏本的买卖。低买高卖是交易的原则。

输入描述 Input Description

第一行一个整数N。
第二行,N个整数,依次表示第1天~第N天的邮票的价格。

输出描述 Output Description

一个整数,意义如题所述。

样例输入 Sample Input

【输入样例1】 5 7 1 5 6 4 【输入样例2】 5 5 4 3 2 2

样例输出 Sample Output

【输出样例1】 5 【输出样例2】 0

数据范围及提示 Data Size & Hint

1<=N<=1000000

很急!!!


1
已采纳
被禁言 李秉轩
李秉轩
修练者
修练者
cin>>n;
for(int i=1;i<=n;i++){
    cin>>a[i];
    maxa=max(a[i]-minn,maxa);
    minn=min(minn,a[i]);
}
cout<<maxa;

100分代码

1
潮文馨
潮文馨
新手光能
新手光能

75分代码,谁来改一下

 

int n,a[1000000],min=99999999,max=0,min1;

cin>>n;

for(int i=1;i<=n;i++){

    cin>>a[i];

    if(a[i]<min){

        min=a[i];

        min1=i;

        }

}

for(int i=min1;i<=n;i++){

    if(a[i]>max){

        max=a[i];

        }

}

cout<<max-min;

1
王文博
王文博
缔造者之神
缔造者之神

5057剩余输出代码:

if(n<=5) cout<<1;
    else if(n<=8) cout<<2;
    else if(n<=12) cout<<3;
    else cout<<4;

 

我要回答