#abc028d. [abc028_d]乱数生成

[abc028_d]乱数生成

问题文

给定两个整数NNKK

考虑从11NN中等概率选择一个整数的机器。

当运行该机器三次时,求选择的三个数字的中位数为KK的概率。


输入

输入从标准输入读取,具有以下格式。

NN KK

  • 第一行包含整数N(1N106)N(1≤N≤10^6)K(1KN)K(1≤K≤N),以空格分隔。

输出

输出选择的中位数为KK的概率。输出到标准输出,并以换行符结尾。

如果与预期答案的绝对或相对误差小于等于10910^{-9},则被视为正确答案。


示例1

3 2

输出示例1

0.48148148148148148148

中位数为22的情况有:

  • (1, 2, 3)
  • (1, 3, 2)
  • (2, 1, 3)
  • (2, 3, 1)
  • (3, 1, 2)
  • (3, 2, 1)
  • (1, 2, 2)
  • (2, 1, 2)
  • (2, 2, 1)
  • (3, 2, 2)
  • (2, 3, 2)
  • (2, 2, 3)
  • (2, 2, 2)

出现这些情况的概率为13/27=0.481481481...13/27 = 0.481481481...


示例2

3 1

输出示例2

0.25925925925925925926

示例3

765 573

输出示例3

0.00147697396984624371