![]() |
Добро пожаловать, гость ( Вход | Регистрация )
Публикующим:
1. Задачу можно опубликовать двумя способами:
- создав для нее отдельную тему с информативным названием;
- добавив задачу в готовый сборник (например «Бескрылки», «Мини-задачи», «Вопросы ЧГК») или создав свой (например, «Загадки от /для Светы»).
2. Если вы публикуете задачу, решение которой не знаете, напишите об этом. По умолчанию считается, что вам известен правильный ответ и вы готовы проверять других игроков.
Решающим:
1. В темах запрещается писать ответы и подсказки, если возможность открытого обсуждения не оговорена отдельно (в случае открытого обсуждения для текста следует использовать цвет фона или белый, оставляя другим игрокам возможность самостоятельного решения).
2. Правильность решения можно проверить, написав личное сообщение автору.
![]() |
UNDEFEAT |
![]()
Сообщение
#1
|
![]() Avorthoren ![]() ![]() ![]() ![]() Группа: Модераторы BrainGames Сообщений: 3 864 Регистрация: 13.11.2010 Из: Kиев Пользователь №: 21 696 ![]() |
Есть вот такая задача:
![]() Задача решена, но в решении использовался метод "подбора" решения бинарным поиском. Вопрос в следующем: имеет ли эта задача аналитическое решение в общем случае? Буду признателен, если кто-то поделится своими мыслями по этому поводу. Вот вкратце идея программы: Отрезки проведённые из центров соседних окружностей к точке их касания лежат на одной прямой. Значит из них получается многоугольник с вершинами в центрах окружностей. Пусть Ri - искомые расстояния, а R - радиус вписанной в многоугольник окружности, тогда: R1^2 - r1^2 = R2^2 - r2^2 = ... = Rk^2 - rk^2 = R^2 Пусть величина угла AiOAi+1 равна fi, тогда: f1 + f2 + ... + fk = 2*pi Также: fi = 2 * arctg(ri / R). Итого, бинарным поиском мы можем найти такое R, что сумма углов будет равняться 2*pi. Зная R мы найдём все Ri. Аналитически вроде это решить нельзя... Сообщение было отредактировано UNDEFEAT: 21.3.2016, 2:06 |
![]() ![]() |
![]() |
Упрощённая версия | Сейчас: 19.7.2025, 17:11 |