Var n: Longint;
    kq,kq1,kq2: Real;
Procedure Doc;
  Begin
      Assign(input,'sotnn.inp'); Reset(input);
      Assign(output,'sotnn.out'); Rewrite(output);
      Read(n);
  End;
Procedure Xl;
var d1,d2,i: Longint;
  Begin
      kq:= 0; kq1:= 0; kq2:= 0;
      d1:= 0; d2:= 0;
      For i:= 1 to n-1 do
        Begin
            kq:= kq + i;
            If (i mod 2 = 0) then
              Begin
                  inc(d1);
                  kq1:= kq1 + i
              End
            Else begin
                     inc(d2);
                     kq2:= kq2 + i;
                 End;
        End;
      If (d1 = 0 ) then Writeln(0,' ','0.00')
      Else Writeln(kq1:0:0,' ',(kq1/d1):0:2);
      Writeln(kq2:0:0,' ',(kq2/d2):0:2);
      If (n > 1) then Writeln(kq:0:0,' ',(kq/(n-1)):0:2)
      Else Writeln(kq:0:0,' ',(kq/n):0:2)
  End;
begin
    Doc;
    If (n < 2) then
      Begin
          Writeln(0,' ','0.00');
          Writeln(0,' ','0.00');
          Writeln(0,' ','0.00');
      End
    Else Xl;
End.