Ответы и объяснения

HRAshton
Лучший Ответ!
HRAshton

Зверски, конечно, но максимум, что я придумал - снизить необходимый объём памяти... Впрочем, не актуально, ибо 256МеБ позволяют. В общем, вот:)

var

  a: array [1..1000000] of integer;
  b: array [1..3] of integer;
  i, j, t, n: integer;

begin
  assign(output, 'task1.out');  rewrite(output);
  assign(input, 'task1.in');  reset(input);  readln(n); 
  for i := 1 to n do
  begin
    read(a[i]);
    write(' ');
  end;
  close(input);
  for i := 1 to n do
    for j := 1 to n do
      for t := 1 to n do
        if not ((i in [j, t]) or (j in [i, t]) or (t in [i, j])) then
          if (b[1] * b[2] * b[3] < a[i] * a[j] * a[t]) then
          begin
            b[1] := a[i];
            b[2] := a[j];
            b[3] := a[t];
          end;
  writeln(b[1], ' ', b[2], ' ', b[3]);
end.

5.0
1 оценка
1 оценка
Оцени!
Оцени!