P6904 [ICPC 2015 WF] Amalgamated Artichokes

题目描述

**题目背景** 法蒂玛是针对联合洋蓟果业公司 (Amalgamated Artichokes , AA) 的股票分析员。和其他的公司一样,联合洋蓟果业公司有的时候行情较好,有的时候不太行。法蒂玛对联合洋蓟果业公司的股票价格做了跟踪分析,她想确定不同时间段内股价最大跌幅是多少。比如如果一段时间内股价分别为19元,12元,13元,11元,20元,14元,则最大的跌幅为第一天和第四天之间的8。如果最后一天的价格不是14元而是10元,则最大跌幅为最后两天股价之间的10元。 法蒂玛做了些前期的分析,发现一段时间的股价可以建模精确合理地表示为以下方程式: $$ price⁡(k)=p⋅(sin⁡(a⋅k+b)+cos⁡(c⋅k+d)+2) $$ 其中$p,a,b,c,d$均为常数。法蒂玛想要你写个程序确定给定价格序列上的最大股价跌幅。 图1说明了第一组样例的价格函数,你只能考虑时间为整数$k$时的价格。 对于第一组样例,最大股价跌幅出现在第四天和第七天之间。 **一句话题意** 对于给定序列,求差值最大的逆序对

输入格式

输入共一行,包含六个整数$p (1 \le p \le 1000), a, b, c, d ( 0 \le a, b, c, d \le 1\, 000)$ 和$ n (1 \le n \le 10^6).$ 前五个整数意义如题目所述,给定序列长度为n。

输出格式

输出股价最大跌幅,如果没有股价下跌则输出0。 输出最多和标准答案有$10^{-6}$的相对或绝对误差。

说明/提示

时间限制: 5000 ms 空间限制: 1048576 kB. International Collegiate Programming Contest (ACM-ICPC) World Finals 2015