Александр Александрин
Был на сайте: 22.11.2024 09:10

Александр Александрин ShuraAlex

Паспорт не верифицирован
Работал по Безопасной сделке

Расстановка линий на прямоугольниках 

  • 29
  • Опубликовано: 2022-06-30
1. Есть массив прямоугольников в файле .json.
Каждый прямоугольник представлен 2-мя точками с координатами, соответственно
это верхний левый и нижний правый углы прямоугольника.
2. Гарантируется, что все прямоугольники строго параллельны друг другу и
не пересекаются, так же они все расположены либо горизонтально,
либо вертикально (либо одна, либо вторая сторона расположена параллельно
основной оси).
3. Длина прямоугольников отмеряется по оси X, ширина - по оси Y.
4. Ширины прямоугольников могут повторяться.
5. Не гарантируется, что прямоугольники представляют из себя единую фигуру, т.е. они могут располагаться сколь угодно далеко друг от друга на плоскости.
6. Есть переменная **L0**, обозначающая максимальное расстояние между линиями.
Гарантированно, что переменная больше 0.
7. Есть переменная **L1**, обозначающая максимальное расстояние между линией
и краем каждого прямоугольника. Гарантированно, что переменная больше 0.
8. Есть переменная **L2**, обозначающая минимальную длину прямоугольника
для расположения на ней двух линий.
9. Гарантированно, что **L0** >= **L1**.
10. Гарантированно, что **L1** > **L2**.
11. Есть переменная **A**, обозначающая угол, на который надо будет поворачивать
все строящиеся прямые. Угол отсчитывается от оси Y против часовой стрелки.
Гарантированно значение угла от -180 до 180 и не равно 180 или -180.
По умолчанию 0.
12. Есть переменная **W1**, обозначающая кратность длины получаемой линии.
## Задача
Необходимо расположить линии на данных прямоугольниках так, чтобы они удовлетворяли
следующим условиям:
1. Расстояние между двумя линиями, пересекающие один прямоугольник максимум
**L0**.
2. Прямоугольник, длиной более **L2** должен пересекаться минимум двумя линиями.
3. Прямоугольник, длиной менее либо равно **L2** может пересекаться одной линией.
4. Расстояние между пересечением линии и краем прямоугольника меньше либо
равно **L1**.
5. Линии должны быть длиной минимум \[2 * **W1**\].
6. Одна линия должна пересекать минимум два прямоугольника.
7. Количество пересечений должно быть све
Расстановка линий на прямоугольниках
Комментариев нет
оставить комментарий могут только авторизованные пользователи
Другие работы автора:
Загрузчик программ в плату на контроллера Миландр 1986ВЕ91T

Загрузчик программ в плату на контроллера Миландр 1986ВЕ91T Загрузчик программ в плату на основе контроллера 1986ВЕ91T фирмы Миландр через специальный последовательный порт. Согласно требованию заказчика программа и её параметры загружаются независимо друг от друга. Загрузчик содержит как загружаемое в плату …

Обработка поступающей по COM-порту информации в реальном режиме

Обработка поступающей по COM-порту информации в реальном режиме В программный модуль поступает по RS232/RS485 пакеты информации в реальном режиме времени согласно протоколу. Программный модуль определяет тип пакета, корректность пакета и передаёт информацию, содержащуюся в пакете в другой модуль для отображения. …

Обработка сигналов

Обработка сигналов Программа предназначена для обработки численными методами сигналов, записанных в файле с использованием фильтра или без него. Обработанный сигнал записывается в выходной файл. Программа работает на IBM PC с процессорами 80286/80287, 80386/80387, 8048…

Тестовое ПО для проверки ПО на контроллере Миландр 1986ВЕ91Т

Тестовое ПО для проверки ПО на контроллере Миландр 1986ВЕ91Т Тестовое ПО для проверки ПО в плате на основе контроллера 1986ВЕ91T фирмы Миландр. ПО обеспечивает циклический обмен данными по последовательным портам и UDP-портам с заданными параметрами обмена. Кроме того, с помощью тестового ПО возможны запросы …

Деревья по алгоритмам Беллмана-Форда, Дейкстры, Флойда-Уоршела

Деревья по алгоритмам Беллмана-Форда, Дейкстры, Флойда-Уоршела Построение оптимальных деревьев по алгоритмам Беллмана-Форда, Дейкстры, Флойда-Уоршела (теория графов). Входными данными являются текстовые файлы с указанием вершин и дуг. Приложение рассчитывает оптимальное дерево на основе выбранного пользователем …

Приложение, моделирующее вёрстку с помощью скрипта

Приложение, моделирующее вёрстку с помощью скрипта Скрипт представляет собой список операций, которые выполняются последовательно. Каждая операция записывается в отдельной строке. Предусмотрены следующие операции: - комментарий. Строка не влияет на конечный результат, - триггер — условие и операция, …

Получение и обработка данных от приборов КГА-8С

Получение и обработка данных от приборов КГА-8С Приложение выполняет следующие функции - запрашивает данные от приборов КГА-8С, - получает данные от приборов КГА-8С, - сохраняет полученные данные в файле и на удалённом сайте, - отображает на экране полученные текущие данные в цифровом виде, - отоб…

Автоматическое управление проектами и уведомлениями Freelance.ru

Автоматическое управление проектами и уведомлениями Freelance.ru Windows-приложение AutoFreelance предназначено для управления проектами и уведомлениями личного кабинета фрилансера на сайте Freelance.ru. Приложение автоматически удаляет ссылки проектов не предназначенные для пользователя и даёт звуковое сообщение …