当前位置: > 股票>正文

动态规划股票买卖(两次买卖) 信托公司有风险吗多少钱可以买股票呢

2023-07-26 07:58:27 互联网 未知 股票

动态规划股票买卖(两次买卖)

问题描述

最近越来越多的人都投身股市,阿福也有点心动了。谨记着“股市有风险,入市需谨慎”,阿福决定先来研究一下简化版的股票买卖问题。

假设阿福已经准确预测出了某只股票在未来 N 天的价格,他希望买卖两次,使得获得的利润最高。为了计算简单起见,利润的计算方式为卖出的价格减去买入的价格。

同一天可以进行多次买卖。但是在第一次买入之后,必须要先卖出,然后才可以第二次买入。

现在,阿福想知道他最多可以获得多少利润。

输入

输入的第一行是一个整数 T (T scanf("%d",&T); //输入T组数据 while(T--){scanf("%d",&n);//cin和scanf的区别是啥? for(int i=1;i q[i] = mx - a[i];//此时,q记录在第i个买入时能够获得的最大利润 if (a[i] > mx) mx = a[i];//mx就是从i到n-1中的最大值 } /* for(int i=2;i=1;i--) q[i]=max(q[i],q[i+1]);//此时,同理,q[i]也变了,从第i天开始到第n天的····· for(int i=2;i ans) ans = p[i-1]+q[i];//两次买卖获得的最大值就是p[i-1]和q[i]的和的最大值 *///用另一种方式来求也可以,像下面这样,都能AC ans=0; int tmp=-10000;for(int i=1;i

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。