Комментарий к задачке nabbla1

топ 100 блогов biglebowsky14.09.2023 Очень длинный комментарий к задачке https://nabbla1.livejournal.com/513667.html

Пояснение.
Комментарий получился настолько длинным, что пришлось размещать в своем журнале. Как отдельный текст, комментарий не имеет смысла. Рекомендую заглянуть в исходное обсуждение https://nabbla1.livejournal.com/513667.html

Переформулируем исходную задачу.

Есть обруч из невесомой проволоки. Центр обозначим O. На обруче закреплено N массивных бусинок, все бусинки имеют одинаковую массу.
У этой конструкции есть центр масс (ЦМ).

Нас интересует следующая задачка.
Случай, когда ЦМ совпал с центром обруча, рассматривать не будем - не повезло, облом, черт с ним.
Во всех остальных случаях мы хотим провести радиус из O в направлении ЦМ. То есть, нас не волнует расстояние между O и ЦМ, нам интересно только направление.

Предлагается следующий алгоритм.
Разрезаем обруч в произвольном месте и распрямляем проволочку. Находим центр масс прямой конструкции (ЦМп), отмечаем его на проволочке. Опять все сворачиваем в исходный вид.

Вопрос - совпадут ли направления от центра обруча на ЦМ и на отметку ЦМп?
Иными словами - может ли алгоритм принести пользу?

N=1
Совпадут

N=2
Почти облом

Случай, когда бусинки строго на разных концах диаметра не рассматриваем.
В другом случае, у бусинок есть кратчайшее расстояние по дуге между ними (кусок проволоки L1) и более длинное расстояние между ними (кусок проволоки L2)
В зависимости от того, резали L1 или L2, алгоритм будет выдавать либо направление на ЦМ, либо направление, строго противоположное ЦМ.

N=3 и более.
В общем случае - совсем облом.

Контрпример.
N=3. Две бусинки "сдвоенные", почти в одной точке. Одна бусинка в диаметрально противоположной точке.
Очевидно, что направление на ЦМ - направление на сдвоенные бусинки.
Если резать проволоку прямо между сдвоенными бусинками, алгоритм как-то (с точностью до 180 градусов) сработает. Однако, шансов, что так удачно разрежем, мало.
Более вероятный случай, что разрежем проволоку где-то сбоку (то есть, между одиночной и сдвоенными бусинками). Тогда алгоритм выдаст поворот от ЦМ на 1/6 окружности.

Тем не менее, есть случай, когда от алгоритма будет польза и при N=3 и более.
Будем называть углы малыми, если синус угла приблизительно равен углу (в радианах).
Для обсуждаемой у nabbla1 задачки оценим, что все углы меньше 30 градусов можно считать малыми.

Утверждается, что есть некое удачное расположение бусинок, когда алгоритм хорошо работает.
Назовем такое расположение "компактным кластером". Это - когда все бусинки расположились внутри "малого угла". Ну , то есть. Вырезали из картона сектор с углом 30 градусов, удалось найти такое положение сектора, что сектор все бусинки закрыл - отлично, бусинки лежат "компактно"!
Тогда, если разрезать проволоку за пределами "кластера" бусинок, наш алгоритм с хорошей точностью сработает. А вот внутри кластера резать проволоку нельзя.

Теперь вернемся к задачке в формулировке nabbla1 - поставим в точку O теодолит с отсчетом углов 0 ... 360.

Пример 1

Бусинка с направлением на 40 градусов
Бусинка с направлением на 50 градусов
Бусинка с направлением на 69 градусов

Алгоритм сработает. Между направлениями на 40 градусов и на 69 градусов расхождение менее 30 градусов.

Пример 2

Бусинка с направлением на 40 градусов
Бусинка с направлением на 50 градусов
Бусинка с направлением на 168 градусов
Облом. Алгоритм неприменим - кластер бусинок занимает слишком большой угол.

Пример 3.

Бусинка с направлением на 5 градусов
Бусинка с направлением на 24 градусов
Бусинка с направлением на 355 градусов
В моей формулировке - промахнулись с местом разрезания проволоки. Нужно не внутри кластера резать, а снаружи.
В формулировке nabbla1 - неправильно теодолит установили. Нужно повернуть теодолит, чтобы 0 градусов по теодолиту был в другом направлении. Свести "пример 3" к "примеру 1". После этого все получится.

Оставить комментарий

Популярные посты:
Архив записей в блогах:
Сегодня утром в шкафу выбрала футболку с пальмами для похода на работу. По пути в офис обнаружила в почтовом ящике открытку. С пальмами))) "Морская авиация форева!!!"))))) Спасибо, sharabana ! Отправлен привет 17 марта, очень скромные в USA марки: Некоторое время назад мне ве ...
clear-text - ...
Свежая загадка! Что-то мне надоело портреты загадывать, зачем себя искусственно ограничивать узкими рамками жанра. Давайте раздвинем. Жила-была одна тётя. В живописи ее рисовали, и в барочной тоже -- но, удивительное дело, обычно в приличном виде, вот прямо не узнаю брата Васю. При этом ...
Возвращаться в себя куда тяжелее, чем не допустить выхода. Причем не так явного, когда с выплеском, шумно, а незаметного, во всякие мелкие дела, в новости, в болтовню, особенно на сети, когда в нее вовлекаешья (необязательно лично, чтение чьих-то высянений может вывести из себя еще ...
Сергей Александрович тихо отошел во сне, не дожив пару дней до своего 41 летия. Его жена, Анка , разбуженная утренним будильником, убедившись, что Сергей Александрович не дышит, с трудом дотащила усопшего до балкона и сбросила тело вниз. Закрыв балконную дверь и убедившись в отсутствии ...