Как стать автором
Обновить
0
0
Дмитрий Астафьев @GreenPeace

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

Отправить сообщение
Хотелось бы ответить на ваш вопрос:
>> Какой смысл учитывать непопулярные товары?
С точки зрения среднего покупателя — безусловно, статистика по популярным товарам — полезнее.

Однако, замечание SamojlovAndrey относилось к использованию термина репрезентативность в данном контексте. Заявления о том что выборка репрезентативна — как минимум голословно и вероятнее всего неверно.
Похоже вы путаете «Deadlock» (взаимная блокировка) с синхронизацией доступа. Пример объясняет как синхронизировать доступ к ресурсу. Но делает он это не правильно, так как нарушен принцип установки взаимоотношений между блокировками. Так, например все философы сначала берут правую вилку. Но понятие правая вилка — относительно и у каждого философа своё. И если так случится что все философы сядут за стол одновременно — то они все возьмут «правые» вилки и будут ждать «левые» — вот тут и случиться Deadlock.
брал вилку слева от себя… приходилось брать вилку и справа от себя… Если вилка требовалась другому философу, ему приходилось ждать, пока она освободится.

Звучит как практическое пособие по созданию Deadlock.
Я вот тут посмотрел на ваши данные:
3651+9576+684+9325+6105+145+1720 = 31206
0.52*3651+0.5*9576+0.48*684+0.39*9325+0.36*6105+0.21*145+0.14*1720=
13120.64
31206/2 = 15503 > 13120.64

Или у вас бывают ничьи или что-то не сходиться.
Быть может я не внимательно читал статью, поправьте если ошибаюсь. Меня интересует такой факт — а вы пробовали повторить эксперименты в которых трафик резался поменяв целевой сервер? То есть например отправлять данные не на wa.yota.ru или static.yota.ru. А на другой домен(желательно свеже зарегистрированный) с другим IP, но важно чтобы на этом домене был такой же ваш сервер который ведёт себя так же и отвечает так же.

Попробую пояснить почему меня это инетересует. Где-то слышал фразу(не помню кто сказал): «Никогда не приписывай злому умыслу то, что можно объяснить человеческой глупостью». Так вот, если описанный эксперимент был проведён то он мог дать два результата:
1) те же проблемы(что крайне странно и означает что проблема не с dest IP а с самим трафиком и уже больше похоже на техническую проблему — считай человеческая глупость).
2) Проблем нет — что означает что проблемы наблюдаются только для двух указанных IP. Это уже было бы аргументом в пользу наличия злого умысла.

З.Ы.: в идеале новый IP должен быть в подсети 94.25.232.0/24 — чтобы изменения были минимальными (а ещё лучше 94.25.232.128/25). И да — я понимаю что это сложно.
В статье написано:
32 млн человек смотрели трансляцию турнира «League of Legends» через разные стриминговые сервисы. Это больше

Так что, нужно знать вероятнее вы знаете, что такое «League of Legends», а не эти названия.
Полностью согласен, но я почему-то подумал не про гормоны, а про «коробку»:
>>Нужно учитывать возрастные изменения лица под воздействием коробки.

Иными словами, лично я верю, что если в период взросления достаточно долго держать свою голову в твёрдой и достаточно маленькой коробке, то голова станет более квадратной(это изменение кстати можно отнести к фенотипу, если я правильно помню что это такое).

Кстати есть примеры подобного(прадва не с головой и коробкой) у Африканских племён:
Вы видимо не очень внимательно читали статью:
Отражена ли в заметке правда о ресторане? Судью это не очень то интересовало.

Иными словами, из того что это «голая правда», не следует, что придраться не к чему.
Ну очевидно же — либо тот кому очень не понравилось(что вполне вероятно), либо тот, кому очень-очень понравилось(что менее вероятно). Что, впринципе, устраивает орагнизаторов сервиса.
В дополнение к вопросу хочу сказать, что обычно вторым вопросом идет «Как сделать так, чтобы выводило цифры по порядку?»

Здесь более уместен вопрос «Как сделать так, чтобы выводило разные цифры?».
Поясню своё мнение — когда впервые увидел код, был абсолютно уверен что порядок вызова отложенных функций будет правильным и как следствие выведуться цифры по порядку(почему-то забыл об это извечной проблеме js c обращением внутри функии к переменной, которая была изменена). Даже после вашего дополнительного вопроса — не сразу понял о чём речь — пока не выполнил код. Иными словами — порядок вызова функций будет правильным(и как следствие порядок вывода), а вот значение я увсех будут разные — как следствие вопрос про разные цифры более точен и более понятен.
Я почему-то подумал про «Электро» — потому что иначе произносить сложнее.
Какой-то у вас однобокий подход. Вы предлагаете сравнивать машину специально разработанную для игры в шахматы с обычным среднестатистическим человеком. Тогда уж лучше давайте сравним среднестатистического человека со среднестатистической машиной, например Евгением густманом. Что-то мне подсказывает, что большинство таких матчей закончиться в ничью(никто из участников не будет знать правила), но процентов 5-20% матчей всё-таки будет выиграно людьми(банально потому что они знают правила). Нет, вы безусловно правы
Можно ли " делать вывод о полном превосходстве машины"

Да, безусловно — этой конкретной машины и ещё нескольких.

Но так же: Можно ли «делать вывод о предосходстве человека»?
Безусловно — этого кокретного и ещё кучки гросмейстеров над 99% всех машин.

Иными словами — сравнивать «в среднем» в данном случае бессмысленно, да и не очень корректно. Остаёться только сравнивать лучших, а здесь, как я понял из поста, не всё так однозначно.
Просто гениальная идея, особенно в сочетании с солью. Вы бы сразу злоумышленнику README написали: «Если наша база была уркадена вами, то настоятельно рекомендуем начинать взлом с этих паролей — они короче и содержат меньше спец символов».
Из статьи мне не совсем ясен один момент. Вы пишите:
Я нашел себе идею и стал одержимым её реализовать — интернет-магазин продуктов питания.

Было придумано название, я его умолчу, дабы не посчитали рекламой

Из чего я сделал вывод что вы магазн всё таки запустили, но дальше вы пишите о фрилансе и своей студии и создаётся впечатление, что магазин вы забросили. Так где же правда? Вы реализовали свою идею?
Именно, причём не на себе…
В данном решении не учтена связность результата. Иными словами никто не гарантирует, что в результате все треугольники образуют единую поверхность, а не несколько раздельных. Так же никто не гарантирует отсутствие склейки только по вершине.
А ещё, скорее всего, ноут жутко греется…
Мне кажеться, или вас спросили не об этом?
Вот в догонку один из способов решения одной из возможных(судя по вашему условию) задач:

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

Её можно сформулировать так. Есть множество точек.
Необходимо соединить некоторые из них прямыми чтобы получить треугольную склейку
(определение треугольной склейки не предлагается).
Для начала отметим, что между у N точек есть всего N^2/2 различных пар и как следствие для 14 вершин всего
91 линия. Далее сущестует всего 2^91 (пожалуй всего здесь не уместно, но это я погорячился) различных вариантов.
Стоит отметить, что среди этих вариантов довольно много изоморфных, но есть способ это побороть. Способ будет ниже
. Всё что нам осталось — это проверить все эти варианты и по возможности сократить перебор отсекая плохие варианты группами на как можно более ранних этапах.

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

После чего итерироваться по линиям — включая или не включая каждую из них (да — здесь можно генерировать двоичное число с о N^2/2 символами на основе которого определять какие линии включены, а какие нет).

Как и обещал способ избавления от изоморфизма:
Будет считать что в нашей выборке у точки с большим номером должно быть не меньше вершин чем у точки с меньшим номером. У такого способа есть огромное преимущество — с учётом выбранной итерации — он позволит нам довольно быстро отсекать изоморфные варианты.
В самом деле — верхние биты числа — это линии исходящии из вершины с самым больим номером — и если итерируясь по этим битам слева на право мы обнаружили, что по нащим подсчётам у второй вершин уже больше рёбер чем у первой, то это означает, что нам не важно какие значения принимают младшие биты двоичного числа и все двоичные числа с тамики старшими битами можно пропустить.
Аналогичный приём мы будет применять и при проверке на правильную триангуляцию — если по старшим битам видно что триангуляция не правильная — мы будет пропускать все такие числа.

Осталось собственно разобраться с проверкой на триангуляцию. Если я прав, то для этого достаточно двух критериев(надо будет этот момент обдумать получше):

1) Из любой вершины выходит не меньше двух рёбер.
2) Любое ребро принадлежит одному или двум теругольникам (или по другому — если две вершины соединены ребром, то существует ровно одна или две другие вершины, связанные одновременно с обоими этими вершинами)

(сформированные критерии не гарантируют, что полученную триангуляцию можно развернуть в плоскость)

Соответственно итоговый алгоритм выглядит примерно так:
1) Организуем циклы от 0 до 2^(N^2/2)
2) Внутри цила итерируется по битам счётчика выполняя следующие действия:
а) Считаем сколько рёбер из каждой вершины. Если в какой-то момент в этом метсе нарушена неубывающая последовательность, то переходим к следующему числу, которое отличается в уже обработанных битах.
б) Если всё рёбра из данной вершины обработанны(определить этот момент не сложно в силу сортировки рёбер), и их количество меньше 2, то переходи в следуюшему числу… (ну вы поняли).
в) Считаем количество треугольнов которым принадлежит ребро. Если в какой-то момент она принадлежит более чем двух — то вы знаете что делать.
3) В конце проверяем что каждое ребро принадлежит как минимум одному треугольнику.

Сложность алгоритма определать трудно, то я бы сказал что это будет около:
N*(N^2/2)*(2^(N^2/2)/N!) — без учёта отсеивания вариантов, которые не прошли проверку на триангуляцию.

Есть есть вопросы — то можно обсудить.
Простите мне мою глупость, но я вот уже второй день пытаюсь понять постановку задачи и у меня не получается. Вы не могли бы привести более формальную постановку задачи? Так например меня смущают следущие вопросы:
1) В примере вы привели такой вариант:
[[A B C], [A B D], [A C E], [B D E], [C D E]]
Но из него следует, что у нас есть стороны AD, DE и AE — которые тоже образуют треугольник. Почему этот треугольник не перечислен?
2) Исходные точки разположены на плоскости? В трёхмерном пространстве? В N-мерном?
3) Если на плоскости, то допускается ли пересечение сторон треугольником?(например если у нас больше 4 точек и мы их все соединим — то однозначно будут пересечения и вместе с тем, это в некоторой степери можно считать триангуляцией.

Список вопросов лиш для примера. Хотелось бы увидеть формальную постановку задачи, причём желательно в теле статьи. Заранее спасибо.
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность