永远亭的小游戏
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

蓬莱山辉夜由于整天宅在家,整个人都已经变成了一只废neet姬了。于是,她找来了铃仙和因幡帝,来玩一个小游戏。
辉夜拿出一个长度为的数组,铃仙拿出一个长度为的数组,因幡帝拿出一个长度为的数组
她们等概率的在各自的数组中取一个数。辉夜想知道这三个取出的数的乘积的期望是多少?
可以证明,这个期望一定是有理数,可以写成的形式。请输出这个分数对取模的值。
提示:分数取模的值的意义是在区间里找到一个数满足取模为
提示2:本题输入数据较大,推荐使用scanf或更快的输入方式

输入描述:

第一行输入三个正整数,用空格隔开。分别代表辉夜、铃仙和因幡帝拿到的数组长度。 
第二行输入个正整数,代表辉夜拿到的数组。
第三行输入个正整数,代表铃仙拿到的数组。
第四行输入个正整数,代表因幡帝拿到的数组。
数据范围:

输出描述:

最后乘积的期望对取模的值。
示例1

输入

复制
2 2 2
1 2
1 1
2 4

输出

复制
500000008

说明

三个人各取一个数的组合有以下8种:
1*1*2=2
1*1*4=4
1*1*2=2
1*1*4=4
2*1*2=4
2*1*4=8
2*1*2=4
2*1*4=8
(2+4+2+4+4+8+4+8)/8=36/8=4.5
最终的乘积期望是4.5,即9/2,由于(500000008*2)%1000000007=9,因此输出500000008