ПРИНЦИП ЖЕРЕБЬЁВКИ
Рыболовный спорт · Командные и личные соревнования · 2026
1
Каждый член команды — в своей зоне
Зоны между участниками команды распределяются так, чтобы каждый ловил на своём отдельном участке водоёма.
2
Случайный алгоритм
Сектора раздаются криптографическим генератором случайных чисел. Список участников перемешивается по алгоритму Фишера-Йейтса — каждая комбинация равновероятна.
3
Крайний сектор — не более одного на команду
На всю команду — максимум один жёсткий крайний сектор в день. Кто попал на край в День 1 — в День 2 тянет первым и крайний сектор ему не достаётся.
4
Сектор не повторяется
Сектор из Дня 1 недоступен для того же участника в День 2. Каждый за два дня ловит с двух разных мест.
§1. Что такое зоны и сектора
Водоём делится на зоны — буквенные участки берега (А, Б, В, Г, Д...). Каждая зона делится на сектора — пронумерованные места для ловли. Спортсмен ловит рыбу в своём секторе весь тур соревнований.
Пример раскладки берега — 5 зон по 20 секторов
| Зона | Сектора | Кол-во мест | Примечание |
| А | А1 — А20 | 20 | Крайние: А1 (жёсткий край), А2 (предкрай) |
| Б | Б1 — Б20 | 20 | Средняя зона |
| В | В1 — В20 | 20 | Средняя зона |
| Г | Г1 — Г20 | 20 | Средняя зона |
| Д | Д1 — Д20 | 20 | Крайние: Д19 (предкрай), Д20 (жёсткий край) |
Схема берега
~ ~ ~ ВОДА ~ ~ ~
Жёсткий край — первый и последний сектор зоны. Рыба заходит с открытой стороны без конкуренции с соседними секторами.
Предкрай — второй и предпоследний сектор. Один сосед, с другой стороны — открытое пространство.
§2. Как работает случайная выборка
Порядок раздачи секторов определяется генератором случайных чисел и алгоритмом перемешивания.
🎲
Генератор случайных чисел (CSPRNG)
Используется криптографически стойкий генератор псевдослучайных чисел. Каждый запуск жеребьёвки использует новое зерно. Два одинаковых результата подряд статистически невозможны.
🔀
Перемешивание по алгоритму Фишера-Йейтса
Список участников перемешивается перед раздачей. Алгоритм Фишера-Йейтса гарантирует равновероятность всех возможных порядков: каждая перестановка имеет шанс 1/N!.
Распределение зон при многократных жеребьёвках
При равномерном распределении каждый участник должен одинаково часто попадать в каждую зону. График для команды из 5 человек при 5 зонах — теоретически 20% на каждую зону.
Теоретическое значение: 20.00% (1/5). Отклонение алгоритма — менее 0.1%.
§3. Что делает алгоритм, если не может найти решение
Иногда условия задачи настолько жёсткие, что с первой попытки решение не находится. Алгоритм не сдаётся — он пробует снова.
| Этап | Попыток максимум | Что проверяется |
| Раздача зон (assignZones) | 2 000 | Уникальность зон внутри команды, запрет зон из Дня 1 |
| Раздача секторов (assignSectors) | 400 / 500 | Правило края, запрет повтора сектора, предкрай |
| Проверка дня (genDay) | 500 | Сочленения зон, не более 1 края на команду |
Если за отведённое число попыток решение не найдено — система сообщит об ошибке. Это редкая ситуация: как правило, решение находится в первые 1–5 попыток.
§4. Как проходит жеребьёвка — пошагово
1
Организатор вводит данные
В систему вносятся: список команд с участниками, количество зон и секторов в каждой зоне, расположение крайних и предкрайних секторов, разрывы берега (если есть).
2
Алгоритм раздаёт зоны командам
Для каждой зоны формируется пул слотов. Слоты раздаются по командам. Алгоритм перебирает варианты до нахождения решения — до 2000 попыток.
3
Алгоритм раздаёт сектора внутри зон
Внутри каждой зоны сектора раздаются случайно. При этом соблюдаются правила краёв: если у команды уже есть один крайник — второй крайний сектор этой зоны отдаётся другой команде. Спортсменам, тянувшим край в День 1, крайние сектора в День 2 заблокированы.
4
Проверки перед сохранением
После каждой попытки система проверяет: нет ли нарушений сочленений зон, не нарушено ли правило одного края на команду, нет ли повторов секторов из День 1. Если хотя бы одна проверка не прошла — алгоритм пробует снова.
5
Результат доступен сразу
Готовая жеребьёвка выводится на экран: по зонам, сводная таблица, вкладка краёв. Всё можно скачать в Excel и распечатать для судей. Жеребьёвка сохраняется в архиве и доступна по ссылке.
§5. Зоны команды
Каждый участник команды получает зону и ловит в ней весь тур.
Для команды из N человек: N участников → N зон
Каждому участнику — отдельная буква зоны (А, Б, В, Г, Д...)
📋 Пример: команда «Фидерстайл» из 5 человек, 5 зон (А, Б, В, Г, Д)
✅ Пять участников — пять зон.
❌ Запрещено: двое из одной команды в зоне А — это нарушение, алгоритм такую жеребьёвку не примет.
Каждая команда представлена во всех зонах водоёма одновременно.
§6. Правила краёв — жёсткий и мягкий
Крайние сектора на соревнованиях — предмет споров. Система учитывает их по строгим правилам.
Определения
| Тип | Какой сектор | Обозначение | Особенность |
| Жёсткий край |
Первый и последний сектор зоны |
🔴 красная точка |
Рыба заходит с открытой стороны без помех от соседних участников. Считается выгодной позицией. |
| Предкрай |
Второй и предпоследний сектор зоны |
🟡 жёлтая точка |
Один сосед вместо двух. Рыба с открытой стороны приходит без конкуренции. |
| Чистый сектор |
Все остальные |
— пусто — |
Стандартные условия, соседи с обеих сторон. |
Правила для команд
I
Не более одного жёсткого края на команду в день
На всю команду — максимум один жёсткий крайний сектор. Если одному участнику уже достался крайний сектор — другим членам команды крайние сектора в этот день недоступны.
II
Крайник Дня 1 тянет в День 2 первым
Участник, получивший жёсткий крайний сектор в первый день, в День 2 тянет первым среди своей зоны. Крайние сектора ему снова недоступны — чтобы один и тот же спортсмен не занимал выгодную позицию дважды.
III
Мягкое правило предкрая
Предкрай — рекомендательное ограничение. Система старается не давать двух предкраёв одной команде, но если задача неразрешима — допускается. Помечается жёлтым в итоговой таблице.
Разрывы берега
Иногда берег физически прерывается — мост, коряжник, запретная зона. В этом случае организатор может разметить разрывы: сектора по обе стороны от разрыва считаются «жёсткими краями», даже если они не первые и не последние в зоне.
Например: зона Б имеет сектора 1–20, но между 8 и 9 — мост. Тогда Б8 и Б9 получают статус жёсткого края, даже находясь в середине зоны.
§7. Сочленения зон
Сочленение — место, где две соседние зоны смыкаются. Последний сектор зоны А (А20) стоит рядом с первым сектором зоны Б (Б1). Участники одной команды на этих двух секторах одновременно не стоят.
Нет сочленения: последний(зона N) ≠ первый(зона N+1) — для одной команды
Правило распространяется на все соседние зоны: А↔Б, Б↔В, В↔Г, Г↔Д и т.д.
§8. Тандемная жеребьёвка
Тандем — это пара спортсменов, которые ловят вместе из одного сектора. В тандемных соревнованиях единица жеребьёвки — не отдельный человек, а пара.
Тандем = 1 единица → 1 зона → 1 сектор
| Обычные команды | Тандемы |
| 5 человек → 5 разных зон |
Тандем (2 человека) → 1 зона, 1 сектор |
| Каждый тянет свой сектор |
Оба партнёра в одном секторе |
| День 2: каждый меняет зону |
День 2: тандем меняет зону целиком |
📋 Пример: тандем «Морозов & Гусев»
День 1
А сект. 7 — оба партнёра ловят с А7
День 2
Б сект. 11 — оба партнёра переходят на Б11
✅ Зона сменена (А → Б). Сектор не повторился.
§9. Что видит судья после жеребьёвки
После завершения жеребьёвки система выдаёт несколько удобных представлений одних и тех же данных:
| Вкладка | Что показывает | Для кого |
| 📅 День 1 | Сетка: зоны → сектора → участники. Цвет по зоне. | Главный судья, участники |
| 📅 День 2 | Аналогично для второго дня | Главный судья, участники |
| 📊 По зонам 1 | Таблица: сектор → участник → команда → звание. Отсортировано по зонам. | Стартовые судьи в зонах |
| 📊 По зонам 2 | Аналогично для второго дня | Стартовые судьи в зонах |
| 📋 Сводная | Все участники с обоими днями, смена зоны ✅/❌, точки краёв | Главный судья, апелляции |
| 🚨 Края | Только крайники: жёсткий край и предкрай по дням | Судьи для контроля правил |
📥 Любую вкладку можно скачать в Excel одной кнопкой. Таблицы готовы для печати.
§10. Соответствие правилам рыболовного спорта
Алгоритм жеребьёвки разработан в соответствии с Правилами вида спорта «рыболовный спорт» — Приказ Минспорта России от 28.07.2020 № 572 (ред. от 18.04.2024), разделы 4.19–4.29.
Что реализовано по правилам
| Пункт правил | Требование | Реализация |
| п. 4.19 |
Случайность жеребьёвки |
✅ Криптографический генератор + алгоритм Фишера-Йейтса |
| п. 4.19 |
По одному спортсмену в зоне |
✅ Структурная проверка при раздаче зон |
| п. 4.22–4.23 |
Разные сектора в двух турах |
✅ Запрет повтора сектора, до 500 попыток перегенерации |
| п. 4.23 |
Личник во 2-м туре — другая зона |
✅ Зона из Дня 1 заблокирована для личника в День 2 |
| п. 4.24 |
Сочленение зон |
✅ Проверка смежных секторов на границах зон |
| п. 4.25 |
Крайние сектора |
✅ Не более одного жёсткого края на команду в тур |
| п. 4.22 |
Тандемы одной команды — разные зоны |
✅ Проверка зон и сочленений для каждой пары |
| п. 4.19 |
Поддержка 3 и 5 зон |
✅ Любое количество зон, настраивается организатором |
* Проверка соответствия выполнена по тексту Приказа № 572 в редакции от 18.04.2024