//arr[0..n] массив в котором будет производится поиск
//current_length длина текущей последовательности
//max_start,max_length начало и длина наибольшей последовательности
current_start:=0;
current_length:=1;
max_start:=0;
max_length:=0;
for i:=1 to n do//начиная со второго элемента
if arr[i]=arr[i-1]+1 then
begin//если элемент больше предыдущего на 1
current_length:=current_length+1;
end
else
begin
if current_length>max_length then
begin
max_length:=current_length;
max_start:=i-1-current_length;//пишется с головы поэтому смещение может быть не верным
current_length:=1;
end;
end;
//на случай если конец самой длинной последовательности совпадает с концом массива
if current_length>max_length then
begin
max_length:=current_length;
max_start:=n-current_length;//пишется с головы поэтому смещение может быть не верным
end;
в программах клонирования в частности acronis true image
есть возможность делать копию не всего диска а изменений с момента предыдущего копирования
теоретически это можно использовать для синхронизации двух компьютеров
на практике это слишком неудобно (и долго(порядка 20-40 минут))
опять таки теоретически можно написать программу для синхронизации но это мало кому нужно поэтому никто пока не заморачивался