Лидерборд
Лидерборд — это таблица рейтинга участников, автоматически рассчитываемая по результатам решения задач или по итогам голосования жюри. Можно создать несколько лидербордов с разными настройками для одного конкурса.
Когда использовать
- Рейтинг участников по задачам (ML-соревнование, CTF, тестирование)
- Итоговый рейтинг по результатам голосования жюри
- Отдельные рейтинги по трекам или этапам
Создание лидерборда
Шаг 1: Откройте раздел «Лидерборд»
- Перейдите на страницу конкурса
- Наведите на секцию «Лидерборд» и нажмите иконку карандаша
- Нажмите «Добавить»
Шаг 2: Заполните основные поля
| Поле | Обязательно | Описание |
|---|---|---|
| Название | Да | Название лидерборда (например, «Основной рейтинг») |
| Источник данных | Да | По трекам (задачи) или по голосованиям (жюри) |
| Треки / Голосования | Да | Какие треки или голосования включить в расчёт |
| Видимость | Да | Всем (публичный) или только организаторам (приватный) |
| Сортировка | Да | По убыванию (больше = лучше) или по возрастанию (меньше = лучше) |
Шаг 3: Настройте правила (для треков)
Эти настройки доступны только при источнике данных «По трекам»:
| Настройка | Описание |
|---|---|
| Правило агрегации | «Лучший результат» — лучший балл по задаче; «Сумма» — сумма всех попыток |
| Показывать время | Включить колонку времени в таблице |
| Приватный score | Использовать приватный балл вместо публичного |
| Нулевой score | Показывать участников с нулевым баллом |
Шаг 4: Сохраните
Нажмите «Создать». Лидерборд появится в списке и сразу будет виден участникам (если публичный).
Источники данных
По трекам
Лидерборд считает баллы из решений задач (Solution) выбранных треков. Каждый участник (или команда) получает итоговый балл — сумму лучших результатов по каждой задаче.
- Выбранные треки определяют набор задач
- Участники, у которых нет сданных решений, не отображаются
- При
considerZero: falseучастники с нулевым итоговым баллом скрыты
По голосованиям
Лидерборд считает баллы из оценок жюри. Итоговый балл — взвешенная сумма средних оценок по критериям (подробнее — в документации голосования).
- Оцениваются только команды
- Формула:
(средний балл / макс. балл) * весдля каждого критерия
Правило агрегации
Лучший результат (BEST)
По каждой задаче берётся лучшая попытка участника. «Лучшая» зависит от направления сортировки:
- По убыванию: максимальный балл
- По возрастанию: минимальный балл
Итого = сумма лучших баллов по всем задачам.
Сумма (SUM)
По каждой задаче суммируются все попытки участника. Итого = сумма сумм по всем задачам.
Примечание: Режим «Сумма» полезен, когда каждая попытка добавляет очки (например, в CTF).
Режимы времени
Время показывается только при включённой настройке «Показывать время». Доступно три режима:
Сумма времени задач
Для каждой задачи считается отдельно: от момента, когда участник открыл задачу, до сдачи лучшего результата. Время учитывается только для того пользователя, который отправил решение (при командном участии).
Итого = сумма времён по всем задачам. Перерывы между задачами не учитываются.
От первой задачи
Общее время от момента открытия самой первой задачи до сдачи лучшего результата по последней задаче. Включает все паузы.
От открытия доступа
Общее время от даты начала трека до сдачи лучшего результата по последней задаче. Если в лидерборде выбрано несколько треков, используется самая ранняя дата начала среди них.
Примечание: Если у выбранных треков не заполнена дата начала, время в этом режиме не отображается.
Ранжирование
Лидерборд использует DENSE_RANK — при одинаковом балле участники получают одинаковое место, а следующее место идёт без пропуска:
| Место | Участник | Балл |
|---|---|---|
| 1 | Команда А | 100 |
| 1 | Команда Б | 100 |
| 2 | Команда В | 95 |
| 3 | Команда Г | 90 |
При включённом времени участники с одинаковым баллом ранжируются по времени (меньше = лучше).
Видимость
| Режим | Описание |
|---|---|
| Публичный | Виден всем посетителям страницы конкурса |
| Приватный | Виден только организаторам. Полезен для тестовых или промежуточных рейтингов |
В режиме просмотра приватные лидерборды отмечены иконкой закрытого глаза. Участники их не видят.
Управление лидербордами
Редактирование
- Наведите на секцию «Лидерборд» и нажмите карандаш
- Нажмите на строку лидерборда или иконку редактирования
- Измените настройки и нажмите «Сохранить»
Изменения применяются мгновенно — результаты пересчитываются при каждом просмотре.
Удаление
- В режиме редактирования нажмите иконку корзины на строке лидерборда
- Подтвердите удаление
Предупреждение: Удаление необратимо. Настройки лидерборда нельзя восстановить.
Частые вопросы
В: Когда обновляются результаты?
О: Результаты пересчитываются при каждом открытии лидерборда. Новые решения участников сразу отражаются в рейтинге.
В: Можно ли создать несколько лидербордов?
О: Да, можно создать сколько угодно — например, публичный рейтинг для участников и приватный для организаторов, или отдельные рейтинги по разным трекам.
В: Чем отличается «Лучший результат» от «Суммы»?
О: «Лучший результат» берёт одну лучшую попытку по задаче, «Сумма» складывает все попытки. Для большинства конкурсов подходит «Лучший результат».
В: Что такое приватный score?
О: Некоторые задачи имеют два балла: публичный (виден участнику) и приватный (скрытый, на основе расширенного набора тестов). Включение этой настройки использует приватный балл для расчёта рейтинга.
В: Почему у участника нет времени?
О: Время показывается только если участник сначала открыл задачу (создалась запись просмотра), а затем отправил решение. Если запись просмотра отсутствует — время не вычисляется.
В: Как работает поиск?
О: Поиск фильтрует по имени команды или участника. Ранги при этом сохраняются — они рассчитаны до применения фильтра.