Модераторам: ссылка на форум dxdy.ru, как на информационного спонсора, указана на странице конкурса.Предлагаю принять участие в очередном любительском конкурсе по спортивному программированию. В последнее время конкурсы проводятся ради своего удовольствия, поэтому никаких призов не предполагается.
На этот раз три задачи. Здесь приводятся краткие описания задач, а на странице конкурса (ссылка ниже) - полные описания.
Задача 1. Плохая сеть для поиска максимального потока.Здесь предлагается отыскать сеть, в которой алгоритм Эдмондса-Карпа для поиска максимального потока выполняет как можно больше итераций поиска дополняющего пути. Данный алгоритм ищет минимальный по длине дополняющий путь, а в естественной реализации из всех минимальных выбирает лексикографически минимальный. Максимальное возможное число вершин - 256. Напомню, что теоретически алгоритм Эдмондса-Карпа выполняет
поисков дополняющего пути, а на каждый поиск уходит
элементарных операций (
- число вершин, а
- число рёбер). И также напомню, что эта асимптотика является точной. Однако в конкурсе нужно придумать сеть, в которой число вершин ограничено, а количество операций поиска - максимально возможное для этого ограничения. У кого в сети будет больше итераций, тот и победил.
Задача 2. Королевский баянИмеется шахматная доска размером
(
). Сколькими способами можно расположить на ней
королей так, чтобы они не били друг друга? Конкурс начинается от
, так как до 11 ответы известны уже более 10 лет [
A018807].
Задача 3. Блуждания на прямойСуществует классическая задача о блуждании на прямой. Точка находится в начале координатной прямой и за один шаг обязана прыгнуть на
делений вперёд или назад. Сколькими способами она может оказаться в начале координат ровно через
шагов?
Для
и
мы получим последовательность [1,0,2,0,6,0,20,0,70,0,252] (не надо обращать внимание на то, что здесь видны центральные биномиальные коэффициенты, это не важно). Последовательность удовлетворяет линейному однородному рекуррентному соотношению с полиномиальными коэффициентами:
Ответы для
тоже известны. Требуется вывести рекуррентные соотношения для
. Кто дальше - тот и победил.
Несмотря на кажущуюся сложность, задача хоть и трудная (нет эффективного алгоритма для любого
), но не сложная для многих фиксированных
.
Если задачи Вас заинтересовали, прошу
на страницу конкурса.