-
Notifications
You must be signed in to change notification settings - Fork 5
Cómo crear un concurso
andreasantillana edited this page Jan 25, 2025
·
1 revision
Para crear un concurso en omegaUp, es necesario:
- Crear una carpeta con alguna referencia al concurso.
- Adentro de esta carpeta, crear un archivo
contest.yaml
- Tener las carpetas de los problemas de ese concurso adentro de esta carpeta.
Dentro de este archivo se agregarán las siguientes propiedades del concurso
-
title
: Título del concurso. -
alias
: Titulo corto (alias). El título corto se usa para construir la URL del concurso (ejemplos: CodingCup2023, OFMI2024, CopaCentroAmericana2024, etc.). No puede contener espacios. -
start_time
: Fecha y hora de inicio en UTC. -
finish_time
: Fecha y hora de inicio en UTC. -
problems
: Una lista de los alias de los problemas que quieres incluir en el concurso. -
contestants
: Una lista de los usuarios o grupos que quieres agregar como participantes del concurso. -
admins
: Una lista de los usuarios o grupos que quieres agregar como admins del concurso. -
description
: La descripción del concurso. Esta descripción es la que sale en la secciónResumen
de un concurso. -
misc.admission_mode
: Modo de acceso: private (privado) o (public) público. -
misc.feedback
: Retroalimentación de envíos: nada, resumen, detallado. -
misc.languages
: Lenguajes aceptados. -
misc.penalty
: Tipo de penalización. -
misc.requests_user_information
: Si se solicita acceso a información de participantes -
misc.score_mode
: Modo de puntaje. Elige "Todo o nada" si quieres que los concursantes tengan que resolver todos los casos de los problemas para obtener puntos. Elige "Parcial" si quieres que los concursantes obtengan los puntos correspondientes al envío que resolvió más casos de prueba. Elige "Máximo por grupo" si quieres que los concursantes obtengan los puntos correspondientes a todos los casos que llegaron a resolver con alguno de sus envíos. -
misc.scoreboard
: Cuánto tiempo se mostrará el scoreboard durante el concurso. -
misc.show_scoreboard_after
: Si se muestra o no el scoreboard al terminar el concurso. -
misc.submissions_gap
: Separación de envíos. Tiempo mínimo en segundos que debe de esperar un concursante después de realizar un envío para hacer otro (mínimo 60 segundos).
Aquí puedes ver la lista de todos los parámetros que puedes enviar y los valores que acepta.
Así se ve un archivo de ejemplo
title: El título de tu concurso
alias: ALIASDETUCONCURSO
start_time: "2025-02-02T17:00:00Z"
finish_time: "2025-02-02T22:00:00Z"
problems:
- alias: "alias-de-problema-1"
- alias: "alias-de-problema-2"
contestants:
groups:
- "alias-de-grupo-de-participantes"
admins:
groups:
- "alias-de-grupo-de-admins"
description: |
Breve descripción de las instrucciones que quieras mostrar en la parte de Resumen del concurso.
misc:
admission_mode: "private"
feedback: "detailed"
languages: "all"
penalty:
type: "none"
calc_policy: "sum"
time: 0
points_decay_factor: 0
requests_user_information: "no"
score_mode: "partial"
scoreboard: 0
show_scoreboard_after: false
submissions_gap: 60
Así debería estar nuestra estructura de carpetas del repositorio:
.
└── mi-concurso/
├── alias-problema-1/
├── alias-problema-2/
└── contest.yaml
Nota: Es posible tener más de un concurso por repositorio.