Обновить
147
Олег Алистратов@alienator

Пользователь

0,1
Рейтинг
19
Подписчики
Отправить сообщение
Бля. Надо было дочитать комментарии до конца. Извините.
Не думаю, что это было бы слишком долго.

Относительно долго, по-видимому, просчитать всю симуляцию от начального состояния игры по списку действий. Не зря автор пишет про тестирование:
пока полдюжины машин просчитывают симуляцию

А вот передать текущее состояние игры — это, по сути, передать файл сохраненки (который, рискну предположить, весит мегабайты, на край десятки мегабайт).

Это могло бы выглядеть так: у всех игроков картинка останавливается, на экран вываливается BSOD табличка вида «Опс! Вася выпал из игры. Подождем, пока Вася синхронизируется (две с половиной минуты) или ну его?». В зависимости от настроек, да хоть голосования принимается решение на синхронизацию, все идут пить чай и курить, а Вася тем временем получает десяток, да хоть сотню мегабайт текущей сцены. Посредством p2p сцену можно раскроить на части от разных игроков и заполнить Васе весь канал, тут даже докурить не успеешь.

То же самое и для подключения нового игрока.

В общем, не похоже, чтобы это было сложно реализовать, и такая функция была бы затребована многими. Уж лучше подождать, чем всю игру похерить.
Да, старый анекдот становится неактуальным… %)

image
Да никто их и не держит. О том и речь, что выбирать нужно в том числе и по вычислительной сложности.

Более того, если соискатель наизусть помнит O(N) для пузырьковой сортировки, а не рассчитывает ее на месте — так это ему минус, а не плюс. В том смысле, что нужно не помнить, а думать.
Полностью согласен, конкретные значения O(N) для алгоритмов мало интересуют и соискателя, и интервьюера. И если человек хороший, но не в курсе теории сложности вычислений, то и хрен с ней — научится.

А научиться придется — одно дело, когда программиста берут писать десктопную обертку вокруг базы данных, какую-нибудь систему заказа билетов в кинотеатре, и другое дело — когда берут на хайлоад, на решения, которые будут (и должны) масштабироваться на сотни-тысячи серверов. Тут уже человек должен со старта ответить, почему считать ряд Фибоначчи через рекурсию нехорошо.

Насчет HashMap — я часто задаю на собеседованиях вопрос, как устроен (или как соискатель написал бы) ассоциативный массив. И когда человек в своих рассуждениях доходит до коллизий, то вопрос сложности получения значения решается сам собой.

Беда в том, что до коллизий не все доходят.
:)

Сильно надеюсь, что этот затык уже решили. Надо будет протестировать последние версии.

На скорую руку хотел закинуть бенчмарк в браузер, но тут облом: в ECMAScript принудительно установили, что \d всегда есть [0-9]. Так же, как \w всегда [0-9a-ZA-Z_]. Что, вообще говоря, для юникода неправильно.
PCRE для многих языков — основная библиотека для работы с регэкспами. Практически стандарт.
Дополню: удивительно, потому что интуитивно ожидалось обратное, ведь \d в UTF-8 матчит гораздо больше, чем [0-9]. Но оно вот так.

Правда, зависит от сборки. Как раз поведение \d в последние годы меняют от версии к версии. Обсуждается еще.
Ситуация нигде не описана, я докладывал ее пару раз на конференциях. Для меня самого было очень удивительно.

Очень хочется выбрать пару дней и подробно расписать про тонкости TRIEC-EXACT, ANYOF и символьных классов в pcre. Но это ж надо найти время… %)
Э, в чем проблема? В чем повод для иронии? Конечно, я лучше знаю, в чем моя задача, но описать ее в комментариях займет много времени. Может, я отдельный топик потом напишу, это интересная штука. И она действительно более касается расстояния Левенштейна, чем collaborative filtering.

Или вы в телепатии упражняетесь? С такими талантами люди в саппорте нужны.
Моя аватарка какбе намекает, что про скорость регулярных выражений я знаю достаточно %)
И кстати, это узкое место в очень многих задачах, только не все замечают.

Например: /[0-9]/ для utf-8 строки может быть медленнее, чем /\d/ в 60 (!) раз. Кроме шуток.
Мне лучше знать, в какую сторону, правда? Я не хочу здесь расписывать всю задачу, но это НЕ похожие товары в магазине. Привел для примера.
Если проверять правописание по количеству найденных в выдаче гугла, то правильно писать «креведко»
Да постоянно.

Вчера — когда подбирал регулярки для рерайтов в нжиникс.
Три дня назад — когда думал над алгоритмом поиска и хранения подобных элементов (нечто вроде расстояния Левенштейна, или, проще говоря, нечто вроде списка похожих товаров на сайте магазина).
Вам не нужен — я заберу. Нафига мне нужен специалист, который не может посчитать / прикинуть вычислительную сложность простейших алгоритмов?
2, 3 и 7 можно сформулировать проще: «Говорите правду»

Если соискатель готов скорее сдохнуть в муках, чем ответит просто «я не знаю» — то пусть уж действительно сдохнет в муках %)

Искренность — наиболее ценимое мною качество в сотрудниках.
Поскольку множество допустимых (легитимных) действий априори намного больше множества действий недопустимых, было бы очень сложно (и так же неприменимо в реальной жизни) составлять законы «в разрешительном смысле».

Так что, думаю, наличие только формулировок «делать нельзя» имеет простой практический смысл.

А вот почему этих «делать нельзя» столько и они так запутаны, что становится «делать нельзя ничего» — в обозначенной области и за приемлемое время — это уже отдельный вопрос.

А с защитой невиновных и непричастных вполне справляется процессуальный кодекс. Вот только нет их, невиновных. Даже если удалиться в пустыню и по примеру древних святых на столбе сидеть и ничего не делать, выяснится, что столб у тебя в БТИ не зарегистрирован и медяки в миску ты принимать не можешь, потому что не благотворительная организация %)
Заглянул. Да уж, лучше меньше, да лучше.
Это шутка, но я удивляюсь, почему это все еще шутка.
Сдается мне, желающих купить хватило бы %)
Да пожалуйста: smellofbooks.com

Сюда еще загляните %)

Информация

В рейтинге
4 026-й
Откуда
Киев, Киевская обл., Украина
Зарегистрирован
Активность