![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Удалить из заданного числового массива наименьшее число элементов так, чтобы оставшиеся составляли возрастающую последовательность, не меняя их порядок следования.
|
|
#2
|
||||
|
||||
|
В цикле иди с конца до 2 элемента. Если a[i] < a[i-1], значит нужно удалить все элементы массива а от 1 до i-1. Надеюсь понялА что я имею ввиду.
Последний раз редактировалось v1s2222, 24.05.2011 в 14:28. |
|
#3
|
|||
|
|||
|
я девушка!!! мне нужно удалить минимальное кол-во элементов
|
|
#4
|
||||
|
||||
|
Вот мини пример.
Код:
const
N=50;
var
a: array of integer;
i, k, j: Integer;
begin
SetLength(a, N+1);
Randomize;
for i:=1 to N do
a[i]:=random(99);
for i:=N downto 2 do begin
if(a[i] < a[i-1]) then begin
j:=1;
for k:=i to N do begin
a[j]:=a[k];
inc(j);
end;
SetLength(a, j);
Break;
end;
end;
for i:=1 to j-1 do // j-1 в нашем случае длина полученного массива
write(a[i], ' ');Последний раз редактировалось v1s2222, 24.05.2011 в 14:36. |
|
#5
|
|||
|
|||
|
программа что-то странное выдает...
SetLength(a, N+1); - это что? |
|
#6
|
||||
|
||||
|
Задаем размер динамическому массиву. А числа - случайные, в диапазоне от 0 и до 98.
|