//PascalABC.NET версия 3.2, сборка 1389 //Если программа не запускается, то обновите версию uses System.Linq; begin begin writeln('I'); var n := ReadInteger('n='); Writeln((1 + 1 + Power(2, n - 1)) * n / 2); end;
begin writeln; writeln('II'); var n := ReadInteger('n='); Writeln(n mod 11 = 0 ? 'YES' : 'NO');
end;
begin writeln; writeln('III'); var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList; writeln;
while a.Any() do begin write(a[0], ' '); a.RemoveAt(0); if not a.Any then break;
write(a.Last, ' '); a.RemoveAt(a.Count - 1); if not a.Any then break;
var n := 0; if a.Count > 1 then n := a.Count div 2 - 1; write(a[n], ' '); a.RemoveAt(n); end; end; end.
var soldier: array[1..5000]of integer; n, i, j, k, max, t, d, imax, a, c: integer;
begin if auto then begin n := random(5000); for i := 1 to n do soldier[i] := random(5000); end else begin readln(n); for i := 1 to n do read(soldier[i]); end;
{сортирововчка} for i := 1 to n - 1 do begin imax := i; for j := i + 1 to n do if soldier[j] > soldier[imax] then imax := j; max := soldier[i]; soldier[i] := soldier[imax]; soldier[imax] := max; end;
max := 0; for i := 1 to n - 1 do for j := i + 1 to n do begin a := soldier[j]; d := soldier[j] - soldier[i]; c := 2; for k := j + 1 to n do if soldier[k] = a + d then begin a := soldier[k]; c := c + 1; end; if c > max then max := c; end;
return str(a)
Тут же работает стандартное преобразование