Задачи на шахматной доске

26.08.13

Разработка - Математика и алгоритмы

Предлагается вариант решения двух классических задач на шахматной доске - это задача о расстановке ферзей и задача о перемещении коня по доске. В последней задаче конь должен обойти все клетки доски, побывав в каждой ячейке только один раз. Варианты решения уже присутствуют на портале. Отличие данной версии - интерфейс. Рисуется доска, отображаются фигуры и перемещения. Плюс для задачи о расстановке ферзей реализован авторский алгоритм, что позволило увеличить скорость поиска решений примерно в три раза.( для доски 11х11 время уменьшилось с 3 мин. 39 сек до 1 мин. 03 сек)

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка задачи на шахматной доске
.epf 132,77Kb ver:1.1
10
10 Скачать (1 SM) Купить за 1 850 руб.

В чем суть авторского решения задачи о расстановке ферзей ? Как и обычно идет перебор  вариантов с отбрасыванием заранее непригодных. То есть фигуры должны располагаться в разных колонках, в разных строках и не лежать на одной диагонали.  Для удаления ненужных полей  шахматная доска разворачивается в одномерный массив и при постановке новой фигуры помечаются (прибавляется единица) ко всем ячейкам, которые находятся под боем. Такой подход оказался продуктивным, что показали замеры скорости выполнения обычного кода и кода с использованием предложенного метода.

Программирование рекурсия

См. также

Математика и алгоритмы Программист Платформа 1C v8.2 Конфигурации 1cv8 Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    3233    stopa85    12    

38

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    7647    user1959478    52    

36

Математика и алгоритмы Разное Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Расширение (+ обработка) представляют собою математический тренажер. Ваш ребенок сможет проверить свои знание на математические вычисление до 100.

2 стартмани

29.09.2023    3169    maksa2005    8    

26

Математика и алгоритмы Инструментарий разработчика Программист Платформа 1С v8.3 Мобильная платформа Россия Абонемент ($m)

Что ж... лучше поздно, чем никогда. Подсистема 1С для работы с регулярными выражениями: разбор выражения, проверка на соответствие шаблону, поиск вхождений в тексте.

1 стартмани

09.06.2023    10943    7    SpaceOfMyHead    18    

61

Математика и алгоритмы Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Три задачи - три идеи - три решения. Мало кода, много смысла. Мини-статья.

03.04.2023    4424    RustIG    9    

25

Механизмы платформы 1С Математика и алгоритмы Программист Платформа 1С v8.3 Россия Бесплатно (free)

В статье анализируются средства платформы для решения системы линейных уравнений в 1С. Приводятся доводы в пользу некорректной работы встроенных алгоритмов, а значит потенциально некорректного расчета себестоимости в типовых конфигурациях.

23.11.2022    3590    gzharkoj    14    

25

Математика и алгоритмы Программист Платформа 1С v8.3 Россия Абонемент ($m)

Обычно под распределением понимают определение сумм пропорционально коэффициентам. Предлагаю включить сюда также распределение по порядку (FIFO, LIFO) и повысить уровень размерности до 2-х. 1-ое означает, что распределение может быть не только пропорциональным, но и по порядку, а 2-ое - это вариант реализации матричного распределения: по строкам и столбцам. Возможно вас заинтересует также необычное решение этой задачи через создание DSL на базе реализации текучего интерфейса

1 стартмани

21.03.2022    9052    7    kalyaka    11    

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