Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Возрастающая последовательность

Автор: Postman 18.06.2007 19:25

Всем доброй части суток!
Решил написать следующую программку:
Дан целочисленный одномерный массив. Найти наименьшее число К элементов, которые можно выкинуть из массива, чтобы осталась возрастающая последовательность. Порядок следования элементов в возрастающей последовательности остаётся тем же, что и в исходной. Если возможных решений несколько, вывести одно из них.

Я её реализовал с помощью двух дополнительных файлов, в которые программа записывает промежуточные результаты своей работы (в один файл числа, которые нужно выкинуть, в другой - оставшиеся).
Но как обойтись без них? Неужели придётся создавать динамические списки?

Прикрепленный файл  JOKE_1.PAS ( 1.64 килобайт ) Кол-во скачиваний: 506
- вот файл pas

Автор: мисс_граффити 18.06.2007 20:59

Вот похожая:
http://forum.pascal.net.ru/index.php?showtopic=17196&hl=%EF%EE%F1%EB%E5%E4%EE%E2%E0%F2%E5%EB%FC%ED%EE%F1%F2%FC++%E2%FB%F7%E5%F0%EA%ED%F3%F2%FC

Автор: Postman 19.06.2007 20:18

Спасибо, но вся проблема в том, что входные данные находятся в файле, т.е. N заранее неизвестно.
Кроме входного и выходного файлов я ещё два использовал.

Цитата
Но как обойтись без них? Неужели придётся создавать динамические списки?

Автор: volvo 19.06.2007 20:21

Цитата
Неужели придётся создавать динамические списки?
Динамические массивы (те, память под которые выделяется в "куче", а не резервируется на этапе компиляции) не устроят? Ты же можешь посчитать число элементов последовательности, и только потом выделить память...

Автор: Postman 19.06.2007 20:40

Цитата(volvo @ 19.06.2007 17:21) *

Динамические массивы (те, память под которые выделяется в "куче", а не резервируется на этапе компиляции) не устроят? Ты же можешь посчитать число элементов последовательности, и только потом выделить память...

Да, наверное только так.

Автор: Postman 5.07.2007 14:28

Цитата
Прикрепленный файл  JOKE_1.PAS ( 1.64 килобайт ) Кол-во скачиваний: 506

Напортачил я с программой. Она редко делает что нужно... dry.gif
Вот исправленная(уже с динамическими массивами):
Прикрепленный файл  joke_3.pas ( 3.91 килобайт ) Кол-во скачиваний: 455