ITnan

Все публикации Хабрахабр и Гиктаймс в одном месте
Выбран стиль: blue



Выбран хаб Unity3D


  1. eugene_bb
    /#19152871

    Не надо забывать что существует «два» убера, один высокотехнологичный и успешный. Другой реальные водители и не очень привлекательный.

    Те кто работают в первом, искренне верят в то что написано в статье. Ну а те кто «работает» во втором (они не работники компании, а контракторы) просто не имеют множества опций для занятости/подработки. А то что есть, не лучше очень убера.

    Из журнала Time:

    A 2017 survey by RideShareGuy blog found that drivers earned an average of $15.68 and $17.50 per hour at Uber and Lyft, respectively. But these are gross earnings… median profit from driving is $3.37! That’s the paltry median hourly profit for Uber and Lyft drivers—after expenses are factored in.

    What’s more, 30% of Uber and Lyft drivers are actually losing money once expenses like gas, insurance, vehicle repairs, and depreciation are included, according to the paper.

    Минимальная законодательно установленная зарплата зависит о штата и где-то в районе $9-11.

  2. Gozdi
    /#19152873

    Ребята, ну сделайте наконец флешку на телефон, в форме крючка U, type C. Крик души. Айфыон есть, Андроид нет.

  3. springimport
    /#19152853

    А может он все же основан на том что по приезду в большой город можно просто вызвать такси и через 3 минуты уже ехать? При этом не рассказывая очередное «как проехать в тот двор».
    Тоже самое и lyft.

    Про стоимость забыл. Как-то раз поездка на желтом такси в Манхеттене на пол часа обошлась в $20+. Прямо сейчас можно вызвать Убер за 10. Вот и весь успех.

  4. u-235
    /#19152843 / +1

    Вы меня извините, но когда я читаю ваш код я чешусь в самых нескромных местах.

  5. Zmiy666
    /#19152841

    А что делать если пациент боится врачей как огня и принципиально отказывается проходить какие-либо тесты? :( Мы примерно так прозевали Альцгеймер у бабушки — та была затворницей, не хотела ни с кем общаться, отказывалась обучаться пользоваться телефоном, не смотрела телевизор, почти не читала и хотела чтоб ее не трогали… ну мы и не трогали, а потом фигак, в один «прекрасный» момент она не вспомнила имени своей дочери и своего адреса. Хорошо хоть ее мошенники не надурили, а то ведь за имуществом таких пенсионеров идет охота, ибо она бы даже не вспомнила о продаже квартиры например, а потом срок сделки вышел…

  6. nad_oby
    /#19152837

    О да pep8 и pylint спасают просто.
    А для языков на которых почти не пишу или рекомендации (если под них линтер настраивается легко) или стиль проекта.

  7. vadv
    /#19152839

    Николай, спасибо за статью!
    Как можно решить с помощью envoy можно проблему пинания 504 от апстрима к апстриму?

  8. aamonster
    /#19152809

    Читаю — "правильно подойти даже к самому коварному и нетривиальному ТЗ". О блин, думаю, у них есть ТЗ, счастливчики.
    Стал читать дальше — а, нет, всё нормально, ТЗ надо составлять с помощью телепатии.

  9. malkovsky
    /#19152745

    DC подразумевает, что вы решаете задачу на множествах. DP тоже применяется на множествах, но не ограничивается ими.

    В бинарном поиске — это массив/отрезок. Важно то, что есть выбор, как именно поделить его. Можно поделить пополам, а можно на 1/3 и 2/3. Понятно, что худший случай лучше, если делить пополам. Можно вообще делить на несколько отрезков, например так работают B-деревья. Главное, что как бы вы не поделили, задачу можно решить из одного конкретного деления.

    Парочка чуть менее тривиальных примеров:
    1) Сортировка слиянием: делим массив на две части, сортируем каждую по отдельности и делаем слияние. Ключевой момент — слияние двух отсортированных массивов можно сделать за линейное время. Опять же, достаточно сделать одно разделение
    2) Построение выпуклой оболочки: берем какую-то прямую, она как-то разделяет множество точек на два подмножества. Строим выпуклые оболочки на подмножествах и объединяем. Опять же, основная сложность — это сделать объединение. И снова, важно то, что одного разбиения достаточно.

    С DP ситуация немного иная: DP обычно фокусируется на добавлении элементов по одному, чтобы уменьшить издержки на «переход» от подзадачи к задаче. Вот пара примеров
    1) Задача коммивояжера, точное решение DP за 2^n * n^2. Предлагается считать функцию: f(S, i)=«минимальный путь, проходящий ровно один раз по всем вершинам из S и ни по каким другим, и при этом заканчивающийся на вершине i». Стандартный переход — перебрать предпоследнюю вершину j из S и взять минимум по f(S\{i}, j) + cost(i, j). Так или иначе нужно сделать хоть и минимальный но перебор нескольких разбиений. При этом пересчет f(S, i) по произвольному разбиению S не проще исходной задачи.
    2) Задача о рюкзаке: есть набор предметов разного целочисленного объема, нужно набрать ровно V. Можно считать функцию f(W, i)=«можно ли набрать первыми i предметами объем W». Такую функцию относительно легко пересчитать, добавляя предметы по одному, а не разделяя на произвольные подмножества.

  10. Mad__Max
    /#19152737

    А где в статье на это указано.

    А насчет одно из самых узких мест. Разве? Все что видел в тестах производительности обычно показывает, что для современных микропроцессорных архитектур (в которых непосредственно исполнительные модули обложены многочисленными слоями кэшей, буферов, модулей предвыборки и предсказателей ветвлений) влияние задержек основной памяти намного (в 2-3 раза) меньше чем влияние пропускной способности памяти. Которая тоже совсем далеко не линейно на производительности обычно сказывается.
    И ухудшение задержек случайного доступа к памяти на 10-15% обычно выливается в падение скорости прикладного ПО только на 1%-5%.