#P8213. 文文的相机胶卷

文文的相机胶卷

Description

一天,香港记者射命丸文从荷取那里购买了n n 张胶卷。而作为幻想乡的记者,文文对胶卷有着极其严格的要求。

她先对胶卷按顺序标号为1n 1-n ,并对第i张胶卷1in (1\leq i\leq n) 附上本值 hi h_i ,表示对该胶卷的初印象。之后文文对每张胶卷附上次值z z ,她对次值的定义是:“对于第i i 张胶卷2in (2\leq i\leq n) ,满足次值zi z_i 为在第 1 1 张至第i i 张内连续几张胶卷的本值之和的最大值。第一张胶卷的次值即为该胶卷的本值。”最后文文每张胶卷附上文值a a ,对文值的定义是:“对于第i i 张胶卷2in (2\leq i\leq n) ,满足文值ai a_i 为第1 1 张至第i1 i-1 张内的第j j 张胶卷的次值 zj z_j 和文值aj a_j 之和的最大值。第一张胶卷的文值即为该胶卷的本值。”文文对这 n n 张胶卷的最终评价值ans ans 即为这n n 张胶卷中所有文值的最大文值。

由于该工作工作量较大,文文向你求助计算最终评价值ans ans 。但最终评价值ans ans 可能很大,所以文文会给你一个数aya aya ,只需输出ans%aya ans \% aya 的结果。

Input Format

film.in film.in 读入文件。

第一行包含两个正整数n n aya aya ,之间用一个空格隔开。

第二行包含n n 个数,每两个整数之间用一个空格隔开,表示每张胶卷的本值。

Output Format

输出文件于film.out film.out

一个整数,表示ans ans aya aya 取模的结果。

Sample

样例输入1

5 123
4 3 5 1 2

样例输出1

40

样例输入2

5 7
-1 -1 -1 -1 -1

样例输出2

-1

解释(样例1):胶卷的次值分别为4,7,12,13,15 4,7,12,13,15 。文值分别为4,8,15,27,40 4,8,15,27,40 。最终评价值40 40 123 123 的模是40 40

Hint

对于 50% 50\% 的数据,1n,aya103 1\leq n,aya \leq 10^3 ,0hi103 0\leq |h_i| \leq 10^3;

对于 100% 100\% 的数据,1n106 1\leq n \leq 10^6 ,1aya109 1\leq aya \leq 10^9 ,0hi109 0\leq |h_i| \leq 10^9