![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 07.12.2010
Сообщений: 3
|
![]() Задача: Построить максимальное множество, состоящее из попарно не сравнимых векторов v. Векторы v определяются парами чисел, выбираемые из данной последовательности чисел а1, ...аn , n>=1. Два вектора v=(а,в) и v'=(а',в') называются сравнимыми, если а<=а' и в<=в' или а>=а' и в>= в', в противном случае не сравнимыми. Решение: (То, что не могу понять как реализовать - выделено курсивом) Пусть числа a[1], ..., a[n] расположены в порядке неубывания (если это не так, то просто отсортируем массив). Будем выписывать искомые векторы v[1], ..., следующим образом: Пусть k - номер формируемого сейчас вектора. Положим сначала индекс i первого элемента формируемого сейчас вектора v[k] равным 1, а индекс второго элемента j=N. k:=0; пока (i<j) повторять {пока есть возможные элементы для пар} k:=k+1; v[k]:=(a[i],a[j]); полагаем i:=i+1; j:=j-1; {переходим к следующим элементам} [I]если v[k]=(a[i],a[j]) то пусть количество оставшихся в массиве A элементов справа от а[i-1], равных a[i-1], есть u, т.е. a=a[i+1]=...=a[i+u], а количество оставшихся в массиве A элементов слева от а[j+1],равных a[j+1], есть v, т.е.a[j]=a[j-1]=...=a[j-v]. если u>=v то, так как мы стремимся получить максимальное число пар, то мы отбросим все оставшиеся элементы со значением a[j] и положим j:=j-v-1 иначе по аналогичной причине отбросим все оставшиеся элементы со значением a[i], т.е. положим i:=i+u+1; конец_если конец_если конец_пока Код:
Последний раз редактировалось Stilet; 07.12.2010 в 08:56. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ПЕРЕВОД КОДА | 2008kedr2008 | Помощь студентам | 0 | 25.11.2010 17:33 |
Перевод кода | zmey31313 | Фриланс | 1 | 01.01.2010 21:49 |
Перевод кода на С++ | Golovastik | Помощь студентам | 0 | 04.06.2009 14:27 |
Перевод кода | ELL | Помощь студентам | 0 | 07.06.2008 01:36 |