Preparing NOJ

An atom of element X can exist in *n* distinct states with energies *E*_{1} < *E*_{2} < ... < *E*_{n}. Arkady wants to build a laser on this element, using a three-level scheme. Here is a simplified description of the scheme.

Three distinct states *i*, *j* and *k* are selected, where *i* < *j* < *k*. After that the following process happens:

- initially the atom is in the state
*i*, - we spend
*E*_{k}-*E*_{i}energy to put the atom in the state*k*, - the atom emits a photon with useful energy
*E*_{k}-*E*_{j}and changes its state to the state*j*, - the atom spontaneously changes its state to the state
*i*, losing energy*E*_{j}-*E*_{i}, - the process repeats from step 1.

Let's define the energy conversion efficiency as , i. e. the ration between the useful energy of the photon and spent energy.

Due to some limitations, Arkady can only choose such three states that *E*_{k} - *E*_{i} ≤ *U*.

Help Arkady to find such the maximum possible energy conversion efficiency within the above constraints.

The first line contains two integers *n* and *U* (3 ≤ *n* ≤ 10^{5}, 1 ≤ *U* ≤ 10^{9}) — the number of states and the maximum possible difference between *E*_{k} and *E*_{i}.

The second line contains a sequence of integers *E*_{1}, *E*_{2}, ..., *E*_{n} (1 ≤ *E*_{1} < *E*_{2}... < *E*_{n} ≤ 10^{9}). It is guaranteed that all *E*_{i} are given in increasing order.

If it is not possible to choose three states that satisfy all constraints, print -1.

Otherwise, print one real number η — the maximum possible energy conversion efficiency. Your answer is considered correct its absolute or relative error does not exceed 10^{ - 9}.

Formally, let your answer be *a*, and the jury's answer be *b*. Your answer is considered correct if .

4 4

1 3 5 7

0.5

10 8

10 13 15 16 17 19 20 22 24 25

0.875

3 1

2 5 10

-1

In the first example choose states 1, 2 and 3, so that the energy conversion efficiency becomes equal to .

In the second example choose states 4, 5 and 9, so that the energy conversion efficiency becomes equal to .

Info

Provider CodeForces

Origin VK Cup 2018 - Round 2

Code CF924B

Tags

binary searchgreedytwo pointers

Submitted 14

Passed 4

AC Rate 28.57%

Date 03/04/2019 16:17:01

Related