Консультации

Неточность в примере

Неточность в примере

от Юрий Кондрашин -
Number of replies: 1
В прилагаемом к задаче тесте выдаётся неверный ответ.
5 запрос на выделение предоставляет 5 ячеек памяти, начиная с 25.
Следующий запрос их же освобождает.
И 6 запрос на выделение должен предоставить память, начиная с первой свободной 25 ячейки.

Единственный вариант приемлемого решения - если брать не номер запроса на выделение памяти, а порядковый номер запроса, но в таком случае можно попросить освободить память для запроса на освобождение, например , указав -4 в примере.

Второй вопрос - присоединяюсь к вопросу Дмитрия Пыркина (http://informatics.mccme.ru/mod/forum/discuss.php?d=2312), на который так и не был дан ответ.
Какой блок для выделения памяти надо выбирать при нескольких возможных вариантах?
1. самый первой, подходящий по размеру
2. самый большой по размеру (если исходить из темы задачи - про кучу)
3. самый подходящий по размеру (тот, у которого остаётся наименьшее количество свободных ячеек после выделения из него памяти. Это может повысить вероятность более плотного заполнения памяти)
In reply to Юрий Кондрашин

Re: Неточность в примере

от Юрий Кондрашин -
1. берётся общий порядковый номер запроса (не номер запроса на выделение)
2. используется самый первый подходящий (только в этом случае работает приведённый пример)