luogu#P7576. 「PMOI-3」期望乘积

    ID: 11577 远端评测题 1000ms 500MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>动态规划dp线段树O2优化动态规划优化矩阵加速矩阵优化矩阵乘法

「PMOI-3」期望乘积

题目描述

ducati 热爱定义一些奇奇妙妙的东西。

  • 定义两个序列不同,当且仅当它们的长度不同,或者它们长度相同但存在至少一组对应位上的值不同。

  • 定义序列 AA 的权值为 AA 中所有数的乘积

  • 定义序列间的可达如下:

    • 恰好 tt 次操作,每次操作选择 AA 的一个子区间(注意,选定的子区间可以为空)并将子区间中的数加 11 ;若存在一种操作方案,使得操作结束后 AABB 完全相同 ,则称 AA 可达 BB
  • 定义序列 AA 的优美值为 AA 可达的所有不同序列的权值和。

现在,ducati 拥有了一个长度为 nn 的序列 aa。他会多次查询一段区间的优美值。

你能帮帮好奇的他吗?你只需要输出每个答案对 1000710007 取模的值就行啦。

输入格式

第一行三个整数 n,q,tn,q,t,表示序列的长度、询问的次数与每次询问的可修改次数。

第二行 nn 个整数,表示序列 aa

下面 qq 行,每行两个正整数 l,rl,r,描述一次询问。

输出格式

对于每次询问,输出答案对 1000710007 取模的值。

2 1 1
1 2
1 2
15
10 3 3
1 5 3 2 2 4 6 3 2 3
1 7
4 9
3 10
3850
1166
3893

提示

【样例解释1】

aa{1,2}\{1,2\}。共 11 次询问。

所有 aa 可达的 bb 如下:

{1,3}{2,2}{2,3}{1,2}\{1,3 \} \{2,2 \} \{2,3 \}\{1,2 \}

它们的权值之和为 3+4+6+2=153+4+6+2=15

【样例解释2】

关于第二个样例,我有一个绝妙的解释,可惜这里空白太小,我写不下。

【数据范围】

本题采用捆绑测试

  • Subtask1(10pts):n,q8n,q\le8
  • Subtask2(20pts):q=1q=1
  • Subtask3(30pts):n,q5×104n,q\le5\times10^4t2t\le2
  • Subtask4(40pts):无特殊限制。

对于 100%100\% 的数据满足,1n,q1051\le n,q\le10^51ai1041\le a_i\le10^41t31\le t\le3,对于所有询问,1lrn1\le l\le r\le n