| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++|Delphi|Алгоритм] Поиск прогрессии. |
| Автор: Tura 13.5.2007, 20:21 |
Вот нашёл интересную задачу, но не знаю как её решить с нормальной сложностью по времени о(n*logn) или ниже и с той же по памяти. Пожалуйста помогите! Последовательность S состоит из N элементов S[i](1<=s[i]<=1000000000), пронумерованных от 0 до (N-1). Из этой последовательности необходимо выбрать максимальное количество различных элементов, являющихся последовательными членами некоторой возрастающей арифметической прогрессии . Порядок этих элементов в последовательности S не имеет значения. И ещё оговорюсь, что в исходной последовательности эти элементы могут наодится как угодно Необходимо вывести индексы этих элементов(в любом порядке). Например: последовательность 6 7 1 2 3 4 5 89 90 выводим индексы 0 1 2 3 4 5 6 Заранее огромное спасибо. |