求助一个题
  • 板块灌水区
  • 楼主wsllwssb
  • 当前回复11
  • 已保存回复11
  • 发布时间2022/5/28 13:03
  • 上次更新2023/10/28 00:28:36
查看原帖
求助一个题
408168
wsllwssb楼主2022/5/28 13:03

最大回撤

题目描述

股票价格瞬息万变。在金融市场上,经常需要统计一只股票最大回撤。最大回撤是指投资者在某天买入,在之后的某天卖出,可能造成的最大亏损,它可以反应一只股票在历史上的最坏表现。 给定一个整数序列啊a1 , a2……an ,每个 ai表示某只股票的在某一天的价格,请计算这只股票的最大回撤。即寻找两个下标满足1≤i≤j≤n,且 ai - aj 最大。

输入格式

第一行,单个整数表示 n; 第二行,n 个整数表示a1 , a2……an;

输出格式

一行一个整数,表示这只股票的最大回撤。

样例

输入

5

2 3 7 6 1

输出

6

25分代码

#include <iostream>
using namespace std;

int a[114514];

int main()
{
    int n , m1 = -114514 , m2 = -1919810;
    cin >> n;
    for(int i = 1 ; i <= n ; i++)
    {
        cin >> a[i];
    }
    for(int i = 1 ; i <= n ; i++)
    {
        for(int j = i ; j <= n ; j++)
        {
            if(a[j] - a[i] > m1) m1 = a[j] - a[i];
        }
        if(m1 > m2) m2 = m1;
    }
    cout << m2;
    return 0;
}
2022/5/28 13:03
加载中...