Прохождение Human Resource Machine — с уровня 29 по 41

Прохождение Human Resource Machine — с уровня 29 по 41

Marat Usupov
24 октября 2015, 09:13

Добрый день уважаемые посетители VGTimes.Ru. Сегодня мы закончим разбирать прохождение головоломки Human Resource Machine. Поскольку игра сложная, но интересная, наверняка данный гайд будет полезен.

Посмотреть прохождение Human Resource Machine можно и в других материалах нашего сайта:

Сегодня мы разберем следующие уровни:

  • №29 — Склад;
  • №30 — Хранилище строк;
  • №31 — Обратная строка;
  • №32 — Инвентаризационный отчёт;
  • №34 — Испепелитель гласных;
  • №36 — Упорядочиватель;
  • №38 — Подрыв чисел;
  • №40 — Фабрика простоты;
  • №35 — Уничтожитель копий;
  • №37 — Связанная цепь;
  • №39 — Переназначение;
  • №41 — Этаж сортировки.

Не будем откладывать дело в долгий ящик и сразу перейдем к советам по прохождению Human Resource Machine. Поскольку задачи здесь высокого уровня и практически все имеют большое решение, мы, для удобства, склеили его на одном скриншоте, просто будьте внимательны.

29. Склад

Задача: для каждого ВВОДИМОГО адреса ВЫВЕСТИ соответствующую этому адресу букву на полу. Будьте внимательны при использовании доброй половины функций, ведь теперь у них двойное значение — обратите внимание на квадратные скобки! Само же решение достаточно тривиально:

30. Хранилище строк

Задача: каждая вещь на ВВОДЕ — адрес ячейки на полу. Для каждого адреса ячейки, предоставленного на ВВОДЕ, ВЫВЕДИТЕ запрашиваемый предмет с пола и выводите все последующие предметы с пола до тех пор, пока не достигните нуля.

Несмотря на такое внушительное описание, как и предыдущая «зеленая» задача, это задание довольно простое и решается всего в 7 строк:

31. Обратная строка

Задача: обратите каждую ВВОДИМУЮ нуль-терминированную строку и ВЫВЕДИТЕ её. Повторяйте до тех пор, пока ВВОДИМЫЕ данные не закончатся. Данное задание решается буквально в 10 команд:

32. Инвентаризационный отчёт

Задача: для каждой ВВОДИМОЙ вещи ВЫВЕДИТЕ количество совпадающих с ней вещей на полу.

Первое решение данного задания является скоростным, но имеет 17 строк:

Второе решение несколько медленнее, но имеет 16 строк:

После этого задания смотрим ролик и переходим к следующему.

33. Испепелитель гласных

Задача: отправьте все из ВВОДА на ВЫВОД, за исключением гласных. Решить эту проблему можно за несколько минут, однако, если у вас не получится, вот код из 13 строк:

Теперь перейдем к факультативу (слева от линии).

36. Упорядочиватель

Задача: ввод содержит ровно два слова. Определите, какое из них было первым в алфавитном порядке и отправьте только его на вывод.

Надо признать, что в данном случае придется повозиться — решение содержит 35 строк и кучу переходов, поэтому будьте внимательны, когда будете переносить решение. Оно бы разместилось на трех скриншотах, но мы склеили его в один, для удобства:

38. Подрыв чисел

Задача: каждое ВВОДИМОЕ число разбейте на отдельные цифры и отправьте их на ВЫВОД. Например, число 123 станет цифрами 1, 2 и 3. Данная факультативная задача была решена только в случае количества строк, всего их 29, а лимит — 30:

Испытание на скорость не пройдено, так что я буду рад увидеть ваше решение, если такое есть, чтобы добавить его в данный гайд.

(картинка будет добавлена позже)

40. Фабрика простоты

Задача: для каждого ВВОДИМОГО числа ВЫВЕДИТЕ его простые МНОЖИТЕЛИ в порядке возрастания. Еще одна сложная задача, требующая длительного обдумывания рабочего алгоритма. Мне удалось решить ее только в части на скорость:

Испытание на количество строк не пройдено, так что я буду рад увидеть ваше решение, если такое есть, чтобы добавить его в данный гайд.

(картинка будет добавлена позже)

Самое время вернуться к основным заданиям и пробить путь к концовке игры! Начинаем задания справа от линии.

35. Уничтожитель копий

Задача: отправьте всё из ВВОДА на ВЫВОД, за исключением тех значений, которые уже ВЫВОДИЛИСЬ. Избавьтесь от всех дубликатов.

Задача должна иметь два решения — первое, на количество кода, занимает 16 строк из необходимых 17:

А вот второе решение, на скорость, мне найти не удалось, так что буду рад увидеть ваше решение, если такое есть, чтобы добавить его в данный гайд.

(картинка будет добавлена позже)

37. Связанная цепь

Задача: каждая ВВОДИМАЯ вещь — адрес одной из пар. Подайте на ВЫВОД данные этой пары, а также данные всех следующих пар в цепочке. Цепь закончится, когда адрес будет отрицательным.

Очень простая задача, решение которой можно найти за несколько минут, но, если у вас это не получится, вот оно:

39. Переназначение

Задача: каждый ВВОДИМЫЙ номер — адрес ячейки на полу. Отправьте на ВЫВОД координаты этой ячейки, сначала номер столбца, затем номер строки.

Несмотря на кажущуюся сложность, у этой задачи очень простое решение, нужно просто придумать правильный алгоритм и обратите внимание на цифру «4» на полу — она там не просто так. Если что-то не получится, вот универсальное решение, которое занимает 14 строк:

41. Этаж сортировки

Задача: для каждой нуль-терминированной последовательности, подаваемой на ВВОД, ОТСОРТИРУЙТЕ ее в порядке возрастания и отправьте результаты на ВЫВОД. Повторите для каждой последовательности.

«Финальный босс» Human Resource Machine — очень сложная задача, требующая внимания сразу по нескольким вопросам — выбор алгоритма сбора и вывода данных, алгоритма сортировки и алгоритма подсчета. Ее решение может занять очень много времени и не всем по силам.

Одно из самых лаконичных решений данной задачи выглядит следующим образом:

Смотрим заключительный ролик. Поздравляем, игра пройдена!

***Спасибо за внимание!***

Об авторе
Комментарии12