C. Phi 的游戏

    Type: Default 1500ms 512MiB

Phi 的游戏

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

时间限制: 1.5 秒

空间限制: 512 MB

题目描述

Picar 和 Roman 是两个非常喜欢玩各种游戏的赌徒。这一天,他们又发现了一种新的数字游戏,名叫 φ\varphi 的游戏 (Phi Games)。

φ\varphi 的游戏是双人游戏,每局游戏由任意一个正整数 NN 开始,由两人轮流对当前的数字进行操作。轮到其中任意一方进行操作时,玩家可以有以下三种选择:

  1. 大喊: " φ:1\varphi : 1 ! " 并将当前的数字 nn 变为 φ(n)\varphi(n);
  2. 大喊: " φ:2\varphi : 2 ! " 并将当前的数字 nn 变为 φ(2n)\varphi(2n);
  3. 大喊: " φ:K\varphi : K ! " 并将当前的数字 nn 变为 φ(nK)\varphi(n-K),其中 KK 是一个双方在开始游戏之前约定好的非负整数。

其中 φ(n)\varphi(n) 表示的是在 11nnnn 个正整数中,有多少个正整数与 nn 互质,如 φ(1)=1, φ(4)=2, φ(10)=4\varphi(1)=1,~\varphi(4)=2,~\varphi(10)=4。根据这一定义可知,φ(n)\varphi(n) 的定义域是 N+\mathbb{N}^+,所以如果选择第 3 种操作 " φ:K\varphi : K ! ",需要保证当前的数字 n>Kn>K

两名玩家轮流操作,如果谁在进行操作之后得到了已经出现过的数字,谁就输掉了本局游戏。例如,玩家 A 对当前的数字 11 选择了操作 1 " φ:1\varphi : 1 ! ",由于 φ(1)=1\varphi(1)=1 是出现过的数字,玩家 A 输掉本局游戏,对手获胜。

φ\varphi 的游戏考验了玩家的心算能力和逻辑推理能力。可惜,由于 Picar 和 Roman 足够聪明,只要指定一个 KK 和最开始的数字 NN,他们就可以算出是先手还是后手有必胜策略。如果对于某个确定的 KK ,以 NN 开始游戏时先手有必胜策略,则称这个 NN 为先手必胜态;否则后手有必胜策略,称 NN 为后手必胜态。为了使得这个游戏(对他们来说)更有趣,他们决定对游戏进行扩展:

  • 玩家先指定 KK,并选择两个正整数 L,RL,R,由系统在 [L,R][L, R] 中的先手必胜态中随机挑选一个 rr 作为右端点;
  • 由后手选择一个正整数左端点 ll,需要保证 1lr1\le l\le r
  • 开始一局游戏时,系统从 [l,r][l,r] 中等概率地挑选一个正整数 NN,作为游戏开始时先手操作的数字。

尽管 Picar 和 Roman 足够聪明,计算修改后的游戏对他们来说也需要花费不少的时间。于是,他们找到了你,想让你帮忙计算一下修改后的游戏平衡性。即:给定参数 L,R,KL,R,K,求后手对于任意 rr选出最优的 ll 使得后手胜率最大时,先手的平均胜率。

输入格式

从标准输入读入数据。

输入仅一行,包含三个非负整数 L,R,KL,R,K,含义如题目描述所示。保证 LRL\le R,且在 [L,R][L,R] 中至少存在一个先手必胜态。

输出格式

输出到标准输出。

输出一个实数,表示在给定的参数 L,R,KL,R,K 下,修改后的游戏的先手平均胜率。

记答案为 aa,而你的输出为 bb,那么当且仅当 ab<106|a-b|<10^{-6} 时我们认为你的输出是正确的。

1 10 3
0.533333333333333333

样例 1 解释

此时 2,4,5,7,9,102,4,5,7,9,10 为先手必胜态,1,3,6,81,3,6,8 为后手必胜态。

  • r=2r=2 对应的最优左端点 ll11,此时先手胜率为 1/21/2
  • r=4r=4 对应的最优左端点 ll33,此时先手胜率为 1/21/2
  • r=5r=5 对应的最优左端点 ll11,此时先手胜率为 3/53/5
  • r=7r=7 对应的最优左端点 ll66,此时先手胜率为 1/21/2
  • r=9r=9 对应的最优左端点 ll88,此时先手胜率为 1/21/2
  • r=10r=10 对应的最优左端点 ll66,此时先手胜率为 3/53/5

故先手的平均胜率为 (1/2+1/2+3/5+1/2+1/2+3/5)/6=8/150.5333(1/2+1/2+3/5+1/2+1/2+3/5)/6=8/15\approx 0.5333

2021 5000 0
0.391970630667343944
214 7483648 57721
0.490802831707061571

子任务

对于所有的数据,保证 1LR107, 0K1071\le L\le R\le 10^7,~0\le K\le 10^7,在 [L,R][L,R] 中至少存在一个先手必胜态。

测试点编号 L,RL,R\le 特殊性质
11 66 K<RK<R
22 1010
33 1616
44 1818
55 10001000
66 20002000
77 30003000
88 50005000
99 10510^5 RL99R-L\le 99
1010
1111
1212
1313 10610^6 RL9R-L\le 9
1414 K=0K=0
1515 K<RK<R
1616 5×1065×10^6 K=0K=0
1717 K<RK<R
1818 10710^7 L=RL=R
1919
2020