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