atcoder#AGC020F. [AGC020F] Arcs on a Circle

    ID: 19366 传统题 5000ms 512MiB 尝试: 2 已通过: 0 难度: 7 上传者: 标签>动态规划杂项离散化算法基础枚举dp

[AGC020F] Arcs on a Circle

Score : 21002100 points

Problem Statement

You have a circle of length CC, and you are placing NN arcs on it. Arc ii has length LiL_i.

Every arc ii is placed on the circle uniformly at random: a random real point on the circle is chosen, then an arc of length LiL_i centered at this point appears.

Note that the arcs are placed independently. For example, they may intersect or contain each other.

What is the probability that every real point of the circle will be covered by at least one arc? Assume that an arc covers its ends.

Constraints

  • 2N62 \leq N \leq 6
  • 2C502 \leq C \leq 50
  • 1Li<C1 \leq L_i < C
  • All input values are integers.

Input

Input is given from Standard Input in the following format:

NN CC

L1L_1 L2L_2 ...... LNL_N

Output

Print the probability that every real point of the circle will be covered by at least one arc. Your answer will be considered correct if its absolute error doesn't exceed 101110^{-11}.

2 3
2 2
0.3333333333333333

The centers of the two arcs must be at distance at least 11. The probability of this on a circle of length 33 is 1/31 / 3.

4 10
1 2 3 4
0.0000000000000000

Even though the total length of the arcs is exactly CC and it's possible that every real point of the circle is covered by at least one arc, the probability of this event is 00.

4 2
1 1 1 1
0.5000000000000000
3 5
2 2 4
0.4000000000000000
4 6
4 1 3 2
0.3148148148148148
6 49
22 13 27 8 2 19
0.2832340720702695