Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет qwerty ([info]qwerty)
@ 2010-01-24 17:11:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Задачка

Есть одномерный массив целых. В начале его расположен массив A длиной a, в конце B длиной b, а посредине не интересующий нас мусор длиной c. Требуется красивым образом переместить B в начало, за ним расположить A, причем сделав при этом не более a+b чтений и записей в массив. Судьба мусора не интересует. Файлы, посторонняя память и рекурсия категорически отсутствуют.


(Читать комментарии) - (Добавить комментарий)

Re: Perl
[info]gregory_777
2010-01-26 04:09 (ссылка)
while($i<$a+c) {
if ($i < $a) {
push(@a, shift (@a));
} else {
shift(@a);
}
}

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Perl
[info]gregory_777
2010-01-26 04:13 (ссылка)
$i=0;
while($i++<$a+$c) {
if ($i < $a) {
push(@a, shift (@a));
} else {
shift(@a);
}
}

(Ответить) (Уровень выше)

Re: Perl
[info]gregory_777
2010-01-26 04:13 (ссылка)
Простите, укурен.

(Ответить) (Уровень выше)

Re: Perl
[info]gregory_777
2010-01-26 04:14 (ссылка)
На С такие вещи делаются на указателях, ясен пень.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Perl
[info]qwerty
2010-01-26 04:29 (ссылка)
Проблема тут совсем не в этом.

(Ответить) (Уровень выше)

Re: Perl
[info]qwerty
2010-01-26 04:28 (ссылка)
Чем дальше, тем смешнее: push, shift.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Perl
[info]gregory_777
2010-01-26 17:02 (ссылка)
push и shift - это просто названия операций работы с указателями. остальные условия выполнены: используется только массив A, к-во итераций a+c.

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Perl
[info]qwerty
2010-01-26 20:06 (ссылка)
Какую траву курите? :)

(Ответить) (Уровень выше) (Ветвь дискуссии)

Re: Perl
[info]gregory_777
2010-01-27 02:46 (ссылка)
А ведь и правда...

(Ответить) (Уровень выше)


(Читать комментарии) -