#P17317. [KismetOI 2026 I] 作弊

    ID: 19730 远端评测题 3000ms 512MiB 尝试: 0 已通过: 0 显示难度NOI/NOI+/CTS 上传者: 标签>动态规划 DPO2优化差分DP 套 DP

[KismetOI 2026 I] 作弊

题目描述

cobeder 开始举办 rated 比赛了。小 A 参加了 nn 场比赛,其中第 ii 场比赛的 perf 值为 pip_ipiV|p_i| \le V)。cobeder 系统有个常数值 kk 和一个数组 g0kVg_{0 \sim kV},对于小 A 的 rating 值,可以用以下方式计算:

  • nkn \le k。则 rating 值等于 $g_{\max\limits_{i=0}^{n}(\sum\limits_{j=1}^{i}p_j)}$。
  • n>kn > k。记 $\text{maxp} = \max\limits_{i=0}^{k}(\sum\limits_{j=1}^{i}p_j)$。则 rating 值等于 gmaxp×(i=1npi)g_{\text{maxp}} \times (\sum\limits_{i=1}^{n}p_i)

特别的,当 i=0i=0 时令 j=1ipj=0\sum\limits_{j=1}^{i}p_j=0

小 A 入侵了 cobeder 的系统,他想要借此机会修改他的 rating 值。具体地,小 A 有一个整数 DDDV|D| \le V),他可以选择一些比赛 1i1<i2<i3<<imn1 \le i_1 < i_2 <i_3 < \dots < i_m \le n,使得在计算 rating 时如果 n>kn > k,那么在算 (i=1npi)(\sum\limits_{i=1}^{n}p_i) 时将 pi1,pi2,,pimp_{i_1},p_{i_2},\dots,p_{i_m} 都用 DD 替代(即不会对 nkn \le k 的情况和 nkn \ge kmaxp\text{maxp} 的值产生影响)。

为了不暴露,需要保证对于 1x<m1 \le x < m,均有 ix+1>ix+1i_{x+1}> i_x + 1。记 f(p)f(p) 为对于一个 perf 值序列 p1np_{1\sim n},他最后可以修改得到的最大 rating 值。

由于 cobeder 计算每场比赛 perf 值的速度有点慢,所以小 A 只得到了部分比赛的 perf 值。具体地,小 A 得到了一个长度为 nn 的序列 p1np_{1\sim n},其中 pi=7912p_i = -7912 表示这场比赛的 perf 值还没算出来,但一定是 [V,V][-V,V] 中某个整数值。

小 A 想知道,如果给定 n,k,D,Vn,k,D,Vp1n,g0kVp_{1\sim n},g_{0\sim kV},对于最后所有可能的 perf 值序列 p1np_{1\sim n}f(p)f(p) 的和为多少?答案对 109+710^9 + 7 取模。

输入格式

第一行四个整数 n,k,D,Vn,k,D,V

第二行 nn 个整数 p1np_{1\sim n}

第三行 kV+1kV + 1 个整数 g0kVg_{0\sim kV}

输出格式

一行一个整数表示答案。

3 2 2 3
-7912 3 -2
1 1 2 3 4 5 5
152
5 2 2 3
-1 3 -2 -7912 -7912
0 0 2 3 3 4 5
900
5 2 2 3
-7912 3 -2 -7912 -7912
0 0 2 3 3 4 5
7895
5 7 2 5
-5 -7912 0 -7912 -7912 
0 0 0 168 303 303 508 508 508 690 690 828 828 828 1005 1005 1005 1190 1190 1190 1190 1190 1190 1217 1217 1287 1600 1600 1600 1600 1600 1600 1600 1600 1600 1600
45661

提示

【样例解释 #1】

一种可能的原 perf 序列 pp0,3,20,3,-2,则 gmaxp=g3=3g_{\text{maxp}}=g_3=3,他的一种最优操作方案是修改 p1,p3p_1,p_322,则他在这一序列得到的 f(p)=3(2+3+2)=21f(p)=3(2+3+2)=21

数据范围

对于所有数据,满足:

  • 1k301 \le k \le 30
  • 0V300 \le V \le 30
  • DV|D| \le V
  • pi{7912}[V,V]p_i \in \{-7912\}\cup [-V,V]pip_i 为整数。
  • 1n1051 \le n \le 10^5
  • 0gi1090 \le g_i \le 10^9 且对于 0i<kV0 \le i < kV,保证 gigi+1g_i \le g_{i+1}

::cute-table{tuack} | Subtask\text{Subtask} | nn\le | kk \le | VV \le | gig_i \le | 特殊性质 | 分值 | | :--------------: | :----: | :------: | :------: | :--------: | :------------------------------------: | :--: | | #1 | 10510^5 | 3030 | 3030 | 10910^9 | gig_i 相同 | 11 | | #2 | 55 | 55 | 55 | ^ | nkn \le k | 44 | | #3 | 3030 | 3030 | 3030 | ^ | 无 | 55 | | #4 | 500500 | 1010 | 1010 | ^ | ^ | 1515 | | #5 | 10510^5 | 3030 | 3030 | 55 | ^ | 1515 | | #6 | ^ | 1010 | 1010 | 10910^9 | ^ | 2020 | | #7 | ^ | 3030 | 3030 | ^ | 所有 pi=7912p_i = -7912ii 均满足 i>ki>k | 1515 | | #8 | ^ | ^ | ^ | ^ | 无 | 2525 |