Как стать автором
Обновить
4
0

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

Отправить сообщение

Этот вопрос уже обсасывался тут на хабре несколько раз, в т.ч. и с более сложными алгоритмами.


Не решены две проблемы:


  • Отсутствия "мертвых душ". Ну да, мой голос тут есть. А как проверить что каждый голос в таблице принадлежит живому человеку? Как список всех жителей города тут поможет? В нем максимум можно увидеть что есть я.
  • Отсутствия анонимности. А значит все люди, на которых есть хоть какое то давление (пенсионеры, армия, муниципалы) проголосуют "как надо" под страхом увольнения или типа того. Вам кажется что это адекватная цена, но это не так. Мы же говорим про систему которая должна работать в условиях недоверия к государсвенным институтам.

При этом обеспечить одновременно анонимность и проверяемость фактически невозможно. И текущая система электронного голосования в своей декларируемой сути обеспечивает это "хоть как-то", т.е. лучше чем описано в статье. Однако это не мешает крутить ее как хочется.

Чем больше объект, тем медленнее он спускается — меньше отношение сопротивления атмосферы к массе — типичный квадрат и куб. Старлинки мелкие.

А еще по кейсам


  • НИ ОДИН из описанных кейсов не подразумевает перепродажу. Перепродавать медицинскую карту? Достижения на работе? Факт участия в благотворительности для налоговой? Што?
    А если перепродажа не подразумевается то блокчейн нафиг не нужон, достаточно просто обычного сертификата подписанного обычной нехайповой цифровой подписью.
  • В значительном числе кейсов подразумевается продолжительное доверие к стороне, выпустившей токен. Ну всякие эти фан-клубы и т.п. — если эта сторона решит что больше фан клуб ей не нужен то все эти токены теряют смысл. А если все равно подразумевается доверие к выпустившей стороне то тут можно просто хоть в общем дискорде сидеть, "невзаимозаменяемость" тут как собаке пятая нога.
  • Некоторая информация не может быть публичной. Выкладывать в публичный доступ мед. карту — преступление.
  • Платить сто баксов за запись о вызове электрика в блокчейн? Емкость блокчейнов крошечная. В абстрактный эфир не влезут записи о вызове электриков в одном городе-миллионнике. А если создавать по блокчейну на каждый город то кто будет "майнить" (т.е. поддерживать инфраструктуру защищая от атаки 51% и все такое)?

"цифровой криптографический сертификат, который подтверждает право на владение цифровым активом"


… Но ведь он ничего не подтверждает. Вон недавно была новость как купили что-то там по дюне, "поверив" что оно что то там дает, хотели выпустить, а выяснилось что ничего не дает и 2.5 миллиона баксов смыты в унитаз. Не в последнюю очередь из-за таких заявлений.


Единственное на что есть какие-то права — это на сам токен. Но даже тут нельзя эти права назвать "владением". Обычно владение информацией подразумевает право как минимум ее не публиковать, а также лицензировать ее под произвольной лицензией. Тут никаких подобных прав нету, поэтому использовать слово "владение" тоже нельзя, иначе это вызывает ложные аналогии с реальным миром.


Можно придумать какое-то другое слово, ну пусть будеть "Держать"
Список вещей которые можно сделать если "держишь" токен:


  • Передать право "держать" в обмен на крипту

и… всё? Единственное право которое у тебя есть это передать его кому-то другому, самоссылается на себя.
Это даже меньше чем у билетов МММ. Те хотя бы в туалете можно было использовать.

Откуда брать топливо чтобы догнать мусор двигающийся с относительными скоростями 2-3 км/с?


Откуда брать окислитель чтобы сжечь "все что может гореть"?


Откуда брать технологии чтобы все что угодно могло гореть в космосе на одноразовом двигателе выдавая достаточно удельного импульса для полета на луну?


Вы представляете размер "импульса" необходимый чтобы с низкой орбиты отправиться к луне? (больше 3 км/c) — испарить на атомы проще.

А если хочется наоборот — одну команду на несколько строк?


По моему все-таки в с++ и прочих джавах сделано лучше. Когда непечатаемые символы вроде переноса строки или табуляции (питон) влияют на логику программы с этим становится опаснее работать в обычных текстовых редакторах.

Существует ли случай, в котором отсутствие; могло бы вызвать критическую ошибку всей программы?

Да.


auto p = a; -b;
auto p = a -b;


auto p = a; (b=5);
auto p = a(b=5);


Я не сишник, уверен сишники сейчас еще десяток примеров приведут.

Парочку примеров, от нового майкрософта (2014+)?

Хм, верно, можно и так понять
Однако это скорее баг русского или вообще языка. В математике "различных" означает именно "не одинаковых", а не более разговорное "всяких"

в каждом из шести разных армейских полков есть по шесть офицеров различных званий

Я уже видел йогурты в литрово выглядящих бутылках содержащих 690 мл. 690 мл уже в принципе округляется до половины литра.

Трихроматное строение человеческого глаза достаточно удобно для создания изображения (на видеокарте) — rgb+a хорошо стыкуется с трехмерными координатами мира xyz+w, позволяет использовать для обработки координат те же вычислительные блоки что и для обрабортки цвета, и получившиеся четыре координаты удобно работают с двоичной системой счисления.


Как бы это все выглядело будь человек тетрахроматом?

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


Ну вот представьте многоугольник в виде буквы М с соединением снизу. Удалив треугольник из двух нижних точек и одной верхней мы получим самопересечение.


Возможно в конце можно будет сделать какой то вывод. Но это надо бы доказать. И в любом случае получится больше чем O(N) из-за того что "если с треугольником не получилось — переходим к следующему". Насколько больше — тоже как-то нетривиально посчитать.

есть еще Manufactoria 2022 — мне ок зашла, слегка похоже на классику Spacechem и иже с ними

Вы должны доказать что это работает, а не "не могу придумать варианта".


Вон возьмите пример из правой верхней картинки статьи, только точка находится "между ног" а треугольник вы взяли из трех нижних точек. Точка в нем лежит, а в исходном многоугольнике — нет.

В статье выпускаемый луч вертикальный поэтому правильно считать по Х а не по У

Если точки многоугольника и искомая точка целые числа то там надо просто математикой выкинуть все операции деления, это возможно, и считать в целых числах. Достаточно просто. Но алгоритм пересечения отрезка с лучом придется переписать. Превращаться в последовательности вертикальных и горизонтальных отрезков не надо.

В случае выпуклого многоугольника исходная задача становится супер простой — проверить что точка лежит с одной стороны от прямых созданных из всех отрезков (например слева от всех отрезков)


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

Массив это не множество — массив уже имеет порядок. Массив точек однозначно задает многоугольник.


Для данного конкретного алгоритма самопересечение многоугольника не играет роли.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность