#CF2020E. 期望功率

    ID: 6338 传统题 1000ms 256MiB 尝试: 2 已通过: 1 难度: 2 上传者: 标签>线性代数位运算其他数学动态规划概率论*2000

期望功率

E. 期望功率

时间限制:4 秒 内存限制:256 兆字节

给定一个包含 nn 个整数的数组 a1,a2,,ana_1,a_2,\dots,a_n。 同时给定一个数组 p1,p2,,pnp_1,p_2,\dots,p_n

SS 表示按照如下规则构造的随机多重集合(可以包含重复元素):

  • 初始时 SS 为空。
  • 对于每个 ii(从 11nn),以概率 pi104\boldsymbol{\dfrac{p_i}{10^4}}aia_i 插入 SS 中。每个元素的插入操作相互独立。

f(S)f(S) 为集合 SS 中所有元素的按位异或和。 请计算 (f(S))2\boldsymbol{(f(S))^2}期望值,答案对 109+710^9+7 取模。


形式化输出要求

设模数 M=109+7M=10^9+7。 可以证明答案能表示为既约分数 pq\dfrac{p}{q}。 你需要输出 pq1modMp\cdot q^{-1} \bmod M,即满足以下条件的整数 xx

0x<M,xqp(modM)0\le x<M,\quad x\cdot q\equiv p \pmod M

输入格式

每个测试文件包含多组测试用例。 第一行输入测试用例数 tt1t1041\le t\le 10^4)。

每组测试用例:

  • 第一行:一个整数 nn1n21051\le n\le 2\cdot 10^5
  • 第二行:nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n1ai10231\le a_i\le 1023
  • 第三行:nn 个整数 p1,p2,,pnp_1,p_2,\dots,p_n1pi1041\le p_i\le 10^4

数据保证:所有测试用例的 nn 之和不超过 21052\cdot 10^5


输出格式

对于每组测试用例,输出 (f(S))2(f(S))^2 的期望值,对 109+710^9+7 取模。


样例输入

4
2
1 2
5000 5000
2
1 1
1000 2000
6
343 624 675 451 902 820
6536 5326 7648 2165 9430 5428
1
1
10000

样例输出

500000007
820000006
280120536
1

样例解释

第一个样例

a=[1,2]a=[1,2],每个元素被选中的概率为 12\dfrac{1}{2}。 共有 44 种等概率情况:

  • S=S=\emptysetf(S)=0f(S)=0(f(S))2=0(f(S))^2=0
  • S={1}S=\{1\}f(S)=1f(S)=1(f(S))2=1(f(S))^2=1
  • S={2}S=\{2\}f(S)=2f(S)=2(f(S))2=4(f(S))^2=4
  • S={1,2}S=\{1,2\}f(S)=12=3f(S)=1\oplus 2=3(f(S))2=9(f(S))^2=9

期望:

$$\dfrac{0+1+4+9}{4}=\dfrac{14}{4}=\dfrac{7}{2}\equiv 500000007 \pmod{10^9+7} $$

第二个样例

a=[1,1]a=[1,1],选中概率分别为 0.10.10.20.2。 有效情况:

  • 都不选:概率 0.720.72,贡献 00
  • 恰好选一个:概率 0.260.26,贡献 11
  • 都选:异或为 00,贡献 00

期望:0.26=26100820000006(mod109+7)0.26=\dfrac{26}{100}\equiv 820000006 \pmod{10^9+7}