semenov-1970
?>

Вводится число k, затем элементы массива (целые числа ), признак конца - ноль. Сдвинуть элементы в массиве влево на k позиций. Sample Input: 3 1 2 3 4 5 6 0 Sample Output: 4 5 6 1 2 3 Программу написать в Python.

Информатика

Ответы

kotocafe45

program t;

var n, i, a, b, c, d, k, m: integer; x1, x2, x3, y1, y2, y3: array[1..10000] of integer; f1, f2: text;

function icl(x, y: integer): boolean;

var i: integer;

begin

icl:=false;

for i:=1 to n do

begin

 if (x>=x1[i]) and (y>=y1[i]) and (x<=x2[i]) and (y<=y2[i]) then

 begin

  icl:=true;

  break

 end

end

end;

procedure re(st, fn: integer);

var nst, nfn, i, j, jj, xx, yy: integer; eq, ff: boolean;

begin

m:=m+1;

nst:=k+1;

ff:=false;

for i:=st to fn do

begin

 for j:=0 to 11 do

 begin

  if j mod 3=0 then continue;

  xx:=x3[i]+trunc(cos(j*pi/6)*3);

  yy:=y3[i]+trunc(sin(j*pi/6)*3);

  if not icl(xx, yy) then continue;

  eq:=false;

  for jj:=1 to k do if (xx=x3[jj]) and (yy=y3[jj]) then

  begin

   eq:=true;

   break

  end;

  if eq then continue;

  if (xx=c) and (yy=d) then

  begin

   ff:=true;

   break

  end;

  k:=k+1;

  x3[k]:=xx;

  y3[k]:=yy;

 end;

 if ff then break;

end;

if ff then exit;

nfn:=k;

if nst>nfn then

begin

 m:=-1;

 exit

end;

re(nst, nfn)

end;

begin

assign(f1, 'horse.in');

reset(f1);

assign(f2, 'horse.out');

rewrite(f2);

readln(f1, n);

for i:=1 to n do readln(f1, x1[i], y1[i], x2[i], y2[i]);

readln(f1, a, b);

readln(f1, c, d);

k:=1;

x3[1]:=a;

y3[1]:=b;

m:=0;

re(1, 1);

writeln(f2, m);

close(f1);

close(f2)

end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вводится число k, затем элементы массива (целые числа ), признак конца - ноль. Сдвинуть элементы в массиве влево на k позиций. Sample Input: 3 1 2 3 4 5 6 0 Sample Output: 4 5 6 1 2 3 Программу написать в Python.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Strelkov567
roman-fetisov2005
palchiknr
tgeraskina
edelstar83
oloinics
АнтонАртем
ylia89
александр496
Viktoromto
gri-7410
pozhidaevgv
Milovidova
Mariya Filippov
fotostock