Упети есть 20 игрушечных солдатиков различного размера – от самых маленьких до достаточно больших . вот список их длин в см: 20, 9, 24, 12, 23, 24, 21, 17, 1, 15, 25, 8, 21, 2, 6, 4, 12, 16, 8, 13 петя хочет выстроит в ряд нескольких из них так, чтобы в каждой паре рядом стоящих солдатиков рост солдатика справа был больше роста солдатика слева по крайней мере на 3 см. какое наибольшее количество солдатиков он сможет поставить?

Нм6шиш Нм6шиш    3   14.09.2019 22:20    2

Ответы
Riyaa Riyaa  07.10.2020 15:24
Const n=20;
var a: array[1..20] of integer = ( 20, 9, 24, 12, 23, 24, 21, 17, 1,
                  15, 25, 8, 21, 2, 6, 4, 12, 16, 8, 13);            
    i,j,k: integer;
begin
  for i:=1 to n-1 do
  for j:=i+1 to n do
  if a[j]<a[i] then swap(a[i],a[j]);
  writeln('отсортированный массив: ');
  for i:=1 to n do write(a[i],' ');
  writeln;
  k:=0;
  i:=1; j:=2;
  repeat
    if a[j]-a[i]>=3 then
    begin
      writeln('пара: ',a[i],' ',a[j]);    
      i:=j;
      inc(k);
    end;  
    inc(j);
  until j>n;
  writeln('количество солдат:k+1);
end.

отсортированный массив: 
1 2 4 6 8 8 9 12 12 13 15 16 17 20 21 21 23 24 24 25 
пара: 1 4
пара: 4 8
пара: 8 12
пара: 12 15
пара: 15 20
пара: 20 23
количество солдат: 7
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика