Показать сообщение отдельно

  #5857  
Старый 22.03.2010, 00:05
Soherox
Познающий
Регистрация: 17.02.2010
Сообщений: 45
С нами: 8542140

Репутация: 47
По умолчанию

Соглашусь с Вами друзья, ждем подробностей от автора, но если что, вот код по алгоритму n1ghtstalker


Код:
{$APPTYPE CONSOLE}
const
  ch = 30000;
var
  i, j, n, rez: integer;
  a: array [1..ch] of integer;

begin
  reset(input, 'input.txt');
  rewrite(output, 'output.txt');
  readln(n);
  rez:=0;
  for i:=1 to n do read(a[i]);
  i:=1;
  while i<n do
    begin
      if n - i >= 3 then
        begin
          if abs(a[i]-a[i+1])+abs(a[i+1]-a[i+2]) < 3*abs(a[i+2] - a[i]) then
            begin
              rez:=rez + abs(a[i]-a[i+1]);
              inc(i);
            end
         else
           begin
             rez:=rez + 3*abs(a[i+2] - a[i]);
             inc(i, 2);
           end;
        end
      else
        begin
          rez:=rez + abs(a[i]-a[i+1]);
          inc(i);
        end;
    end;
  writeln(rez);
  close(input);
  close(output);
end.
Если все же y3 = y1, и энергия в этом случае = 0, то код будет валится

P.S. Код писался на Delphi, если нужно на паскаль, то удаляем {$APPTYPE CONSOLE}, и вместо
Код:
  reset(input, 'input.txt');
  rewrite(output, 'output.txt');
это

Код:
  assign(input, 'input.txt');
  assign(output, 'output.txt');
  reset(input);
  rewrite(output);

Последний раз редактировалось Soherox; 22.03.2010 в 00:11..
 
Ответить с цитированием