/ Vijos / 题库 /

股票交易

股票交易

时间限制:1秒  内存限制:256M


【题目描述】

  最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。

  通过一段时间的观察,lxhgww预测到了未来 \(T\) 天内某只股票的走势,第 \(i\) 天的股票买入价为每股 \(AP_i\),第 \(i\) 天的股票卖出价为每股 \(BP_i\)(数据保证对于每个 \(i\),都有 \(BP_i≤AP_i\)),但是每天不能无限制地交易,于是股票交易所规定第 \(i\) 天的一次买入至多只能购买 \(AS_i\) 股,一次卖出至多只能卖出 \(BS_i\) 股。

  另外,股票交易所还制定了两个规定。为了避免大家疯狂交易,股票交易所规定在两次交易(某一天的买入或者卖出均算是一次交易)之间,至少要间隔 \(W\) 天,也就是说如果在第 \(i\) 天发生了交易,那么从第 \(i+1\) 天到第 \(i+W\) 天,均不能发生交易。同时,为了避免垄断,股票交易所还规定在任何时间,一个人的手里的股票数不能超过 \(MaxP\)。

  在第 1 天之前,lxhgww手里有一大笔钱(可以认为钱的数目无限),但是没有任何股票,当然,\(T\) 天以后,lxhgww想要赚到最多的钱,聪明的程序员们,你们能帮助他吗?

【输入格式】

  输入数据第一行包括 3 个整数,分别是 \(T,MaxP,W\)。
  接下来 \(T\) 行,第i行代表第 \(i-1\) 天的股票走势,每行 4 个整数,分别表示 \(AP_i,BP_i,AS_i,BS_i\)。

【输出格式】

  输出数据为一行,包括 1 个数字,表示lxhgww能赚到的最多的钱数。

【输入输出样例】

 Input

5 2 0
2 1 1 1
2 1 1 1
3 2 1 1
4 3 1 1
5 4 1 1

 Output

3

【数据限制】

  对于 \(30\%\) 的数据,\(0≤W<T≤50\),\(1≤MaxP≤50\)
  对于 \(50\%\) 的数据,\(0≤W<T≤2000\),\(1≤MaxP≤50\)
  对于 \(100\%\) 的数据,\(0≤W<T≤2000\),\(1≤MaxP≤2000\)
  对于所有的数据,\(1≤BPi≤APi≤1000\),\(1≤ASi,BSi≤MaxP\)

【来源】

  Mr.he**

信息

ID
2610
难度
(无)
分类
动态规划 | 数据结构 | 单调队列 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
上传者