#P16520. [GKS 2015 #E] Not So Random
[GKS 2015 #E] Not So Random
题目描述
有一个特定的“随机数生成器”(RNG),它接受一个非负整数作为输入,并生成另一个非负整数作为输出。但你知道这个 RNG 实际上根本算不上随机!它使用一个固定的数字 ,并且总是执行以下三种操作之一:
- 以 的概率:返回输入与 的按位与
- 以 的概率:返回输入与 的按位或
- 以 的概率:返回输入与 的按位异或
(你可以假定 RNG 在每次基于 、 和 的值选择操作时,确实是真正随机的。)
你拥有 个这样的 RNG 副本,并将它们串联在一起,使得前一个机器的输出成为串联中下一个机器的输入。如果你将 作为输入提供给第一个机器,那么串联中最后一个机器的输出的期望值是多少?
输入格式
输入的第一行给出测试用例的数量 。接下来是 个测试用例;每个测试用例占一行,包含六个整数 、、、、 和 。它们分别表示机器的数量、初始输入、所有按位操作(在每台机器上)将使用的固定数字,以及按位与、按位或、按位异或操作的概率乘以 后的值。
输出格式
对于每个测试用例,输出一行形如 Case #x: y 的内容,其中 是测试用例编号(从 开始), 是最终输出的期望值。如果 与正确答案的绝对或相对误差在 以内,则被视为正确。
3
1 5 5 10 50 40
2 5 5 10 50 40
10 15 21 70 20 10
Case #1: 3.0000000000
Case #2: 3.6000000000
Case #3: 15.6850579098
提示
在样例测试用例 #1 中,如果发生按位与或按位或,最终输出将是 ;如果发生按位异或,最终输出将是 。因此得到 的概率是 (),得到 的概率是 。所以最终输出的期望值是 。
在样例测试用例 #2 中,最终输出以 的概率为 ,否则为 。
限制
- 。
- 。
- 。
- 。
- 。
小数据集(测试集 1 - 可见)
- 。
- 。
- 。
大数据集(测试集 2 - 隐藏)
- 。
- 。
- 。
翻译由 DeepSeek V4 Pro 完成