虽然我对任何其他编程语言都没问题,但尝试用PHP提供想法/答案
有一个数组具有以下模式;
$arr = array(
0 => '12',
1 => '38',
2 => '25',
3 => '4',
...
365 => '45',
);
这基本上是全年365天的价值和股票价格的数组。
As far as I can remember the question;
作为您的输入$arr
,编写一个函数,这样您就可以在低价时买入股票,在高价时卖出。函数必须返回以下数组
$return = array(
'buy-date' => '', // day you should've bought, so it price should be low
'sell-date' => '', // day you should've sold, so its price should be high so you make profit
'profit' => '' // value of profit
);
重要提示;购买股票后,您不能卖出超过30天。
所以诀窍是对于任何给定的时间段/月,也许你想在最低的日期购买,但因为你购买股票后30天内你不能卖出,你可能想在第4天最低价购买,所以你仍然可以在下一个畅销日内出售。 (希望我对此很清楚)
除了给我代码片段,给我想法,算法等,我想了解如何处理这样的问题。
答案 0 :(得分:3)
蛮力方法很容易编码。对于每天0-335,如果您在当天购买并在未来1-30天内出售,则计算利润。如果利润大于目前为止的最大利润,请将其记录为最大利润,以及买卖日期。