{
  Persikėlimas per kanalą

  Paprastas perrinkimas.
  O(N) Omega(N) Theta(N)

  Galimos midifikacijos:
    Perrinkimas iki pirmo lokalaus minimumo.
    O(N) Omega(1) Theta(N/2)

    Perrinkimas iš abiejų pusių iki pirmo lokalaus minimumo.
    O(N) Omega(1) Theta(N/2)

  Theta(N/2) - norima pabrėžti, kad algoritmas veikia vidutiniškai
    du kartus greičiau.
}

program Persik1;

var
  N, D, U, V: longint; { Pradiniai duomenys }
  R: longint;          { Rezultatas }
  sqrD: longint;       { Tarpinė reikšmė: sqr(D) }

{ Duomenų įvedimas }
procedure ivesti_duom;
var
  f: text;
begin
  assign(f, 'kanalas.dat');
  reset(f);
  readln(f, N, D, U, V);
  close(f);
end;

{ Randa minimumą perrenkant visas reikšmes }
procedure rasti_min;
  { Laikas, kurį keliaus valtininkas (prieplaukos numeruojamos 0..N-1) }
  function t(x: longint): double;
  begin
    t := sqrt( sqr(1.0 * x) * 1e+6 + sqrD ) / U + (N - 1 - x) * 1.0e+3 / V;
  end;

var
  i: longint;
  x, Rt: double;
begin
  sqrD := sqr(D);
  R := 0; Rt := t(R);
  for i := 1 to N - 1 do
  begin
    x := t(i);
    if x < Rt then
    begin
      R := i;
      Rt := x;
    end;    
  end;
  inc(R);
end;

{ Išvedamas rezultatas - prieplaukos numeris R }
procedure isvesti_rez;
begin
    writeln(R);
end;

begin
  ivesti_duom;
  rasti_min;
  isvesti_rez;
end.

