这是我编写的代码,用于在价格最低时买入股票并在最高价时卖出。我想在这里实现卖空条件,就像我想在购买之前卖掉一样。考虑一周的这一系列股票价格。
3 10 4 1 9 3 2
现在我想在价格为 10 时卖出,在价格为 1 时买入,以实现 9 的利润。
但是我的代码在价格为 1 时买入并在 9 时卖出。我可以通过搜索最大数量和最小数量来获得最大利润。但想通过下面的逻辑来实现,并想知道下面的什么条件不允许我卖空。
long profit=a[1]-a[0];
long minima=a[0];
for(long i=1; i<noOfDays; i++)
{
if(a[i]-minima>profit)
{
profit=a[i]-minima;
}
if(a[i]<minima)
{
minima=a[i];
}
}
cout<<profit;