CF1983E I Love Balls
题目描述
Alice 和 Bob 正在玩一个游戏。有 $n$ 个球,其中有 $k$ 个是特殊球。每个球都有一个与之相关的数值。
两位玩家轮流进行操作。每一回合,玩家会随机选择一个球,并将该球的数值加到自己的得分上,初始得分为 $0$。被选中的球会从游戏中移除。如果选中的球是特殊球,并且游戏中还剩下至少一个球,那么当前玩家继续进行下一回合。如果选中的球不是特殊球,则由另一位玩家进行下一回合。
他们会一直玩到所有球都被取完为止。Alice 先手。
请你计算游戏结束时,Alice 和 Bob 的期望得分,并对 $10^9+7$ 取模。
形式化地,设 $M = 10^9+7$。可以证明答案可以表示为最简分数 $\frac{p}{q}$,其中 $p$ 和 $q$ 是整数,且 $q \not\equiv 0 \pmod{M}$。请输出等于 $p \cdot q^{-1} \bmod M$ 的整数。换句话说,输出一个整数 $x$,满足 $0 \le x < M$ 且 $x \cdot q \equiv p \pmod{M}$。
输入格式
有多组测试数据。输入的第一行包含一个整数 $t$,表示测试用例的数量($1 \le t \le 2 \times 10^5$)。
每组测试数据的第一行包含两个整数 $n$ 和 $k$,用空格分隔($1 \le k \le n \le 4 \times 10^5$)。
每组测试数据的第二行包含 $n$ 个整数:$v_1, v_2, \ldots, v_n$,分别表示每个球的数值,空格分隔。前 $k$ 个球是特殊球($1 \le v_i \le 10^7$)。
所有测试用例中 $n$ 的总和不超过 $5 \times 10^5$。
输出格式
对于每组测试数据,输出两行,每行一个整数,分别表示 Alice 和 Bob 的期望得分对 $10^9+7$ 取模后的结果。
说明/提示
在第一个测试用例中,Alice 的期望得分为 $45$,Bob 的期望得分为 $30$。
由 ChatGPT 4.1 翻译