final caribeña - Reglas Oficiales

CONCURSO INTERNACIONAL UNIVERSITARIO DE PROGRAMACIÓN (ICPC)

CONCURSOS REGIONALES LATINOAMERICANOS ICPC - FINAL CARIBEÑA 2024

Reglas Oficiales

DISPOSICIONES PRELIMINARES

INTRODUCCIÓN

El Concurso Internacional Universitario de Programación (ICPC, por sus siglas en inglés) es una competición anual de programación de computadoras entre equipos, cada uno de tres estudiantes-concursantes y un entrenador, que representan a instituciones de la Educación Superior. Surgió en el año 1970 a partir de un concurso celebrado en la Texas A&M University, organizado por la Sociedad Honorífica Upsilon Pi Epsilon (UPE), y desde entonces ha tenido un crecimiento acelerado en las cantidades de equipos, instituciones y países participantes. Desde el año 1989 la sede central del ICPC se ubica en la Baylor University. A nivel mundial el evento es patrocinado por la empresa JetBrains (desde junio de 2017). Anteriormente fueron patrocinadores: Apple (1989), AT&T (1990-1993), Microsoft (1994-1997) e IBM (1998-Mayo2017).

El ICPC se realiza de manera anual y tiene varios niveles de competición, entre los que se incluyen:

En pocas palabras: "(...) El ICPC es uno de los eventos académicos más antiguos, grandes (en términos de participación) y prestigiosos del mundo (...)"

La Final Caribeña (FC) es un concurso regional que tuvo su primera edición oficial en el año 2011, pues en los dos años anteriores (2009 y 2010) se realizó como parte del Concurso Regional de México y Centroamérica. Entre las principales metas de la FC se destacan:

ORGANIZACIÓN

El Comité Directivo de la FC se compone fundamentalmente por un Director Ejecutivo, un Director Asistente, un Juez Principal y un Gerente de Sistemas. El Comité Directivo es el encargado de ajustar y aplicar estas Reglas, que no contradicen las Reglas de los Concursos Regionales ni las Reglas de las Finales Mundiales. Las variaciones entre ellas están dadas para adaptar diferencias en sistemas educacionales, niveles de competición y otras especificidades del entorno. 

El Director General es el máximo responsable de organizar y efectuar el Concurso Regional según lo establecido en estas Reglas, así como decidir ante situaciones imprevistas.

El Director General de los Concursos Regionales Latinoamericanos es el encargado de aprobar estas Reglas y supervisar que la Final Caribeña (Concurso Regional) se realice de conformidad con las mismas.

ASISTENCIA Y PUNTUALIDAD

Los miembros del equipo deben asistir (con puntualidad) a todas las actividades obligatorias del Concurso Regional. No se permiten cambios en los tres concursantes originalmente inscritos y clasificados al Concurso Regional. Un equipo será descalificado si se presenta incompleto (1 o 2 miembros) al Concurso Real.

COMPOSICIÓN DEL EQUIPO

Cada equipo, de manera obligatoria, tendrá un entrenador que debe cumplir con lo siguiente:

Notas:

Cada equipo, de manera obligatoria, se compone de tres concursantes (ni más ni menos) que deben cumplir con lo siguiente:

Notas:

IDIOMA

El idioma primario de la sede del Concurso Regional será el nativo de su país. Todos los materiales del evento estarán escritos en ese idioma. El conjunto de problemas estará en inglés.

REALIZACIÓN DEL CONCURSO

Mientras que el Director Ejecutivo no indique lo contrario, ningún concursante puede tocar algo en su puesto de competencia.

Aunque en principio el concurso tiene una duración de cinco (5) horas, el Director Ejecutivo puede solicitar una extensión en caso de situaciones imprevistas. Si la duración del concurso es modificada, todos los equipos serán notificados de manera uniforme.

Durante el concurso los equipos pueden consultar cualquier cantidad de documentación, siempre que esté en formato duro (no digital).

Los equipos típicamente se enfrentan a un conjunto de al menos ocho problemas descritos en idioma inglés. En la medida de lo posible, tales problemas son de variadas complejidades y sus soluciones no dependen de un lenguaje de programación en específico.

Los programas (códigos fuente) enviados por los equipos son calificados o juzgados por un juez automático con supervisión humana, casi en "tiempo real" y a partir de ciertos criterios, tales como: exactitud de las respuestas, tiempo de ejecución, uso de memoria, tamaño del código fuente, entre otros. En caso de rechazo (respuesta incorrecta) se notifica al equipo con poca información al respecto y éste podrá, mientras quede tiempo para el fin del concurso, corregir y enviar nuevamente la solución o intentar con otros problemas del conjunto.

Cuando restan 60 minutos para el fin de la competencia comienza lo que se conoce como "tiempo congelado". Durante el "tiempo congelado" la tabla de posiciones no se actualiza más, aunque cada equipo sigue recibiendo las sentencias a sus envíos. Lo anterior se pone en práctica para incentivar aún más la competencia y mantener en misterio los resultados finales hasta las premiaciones. Durante el concurso se hará un anuncio público para informar el inicio del "tiempo congelado".

Durante la competencia un equipo puede solicitar aclaraciones a los jueces, típicamente por considerar que existe ambigüedad o error en un problema. Si los jueces coinciden que realmente existe tal ambigüedad o error, entonces una aclaración se enviará a todos los equipos; en caso contrario, es común que el equipo reciba como respuesta un simple "Sin comentarios". Todas las solicitudes de aclaración deben ser realizadas mediante el sistema que gestiona el concurso (nunca a viva voz en el área de competencia). Tan pronto como les resulte posible, los jueces humanos irán respondiendo las solicitudes de aclaración. Los equipos pueden solicitar aclaración tanto en inglés como en español, pero los jueces siempre responderán en inglés.

Un concursante puede conversar solamente con sus compañeros de equipo y el personal organizador designado por el Director Ejecutivo.

Un competidor no puede incurrir en actividades que atenten contra el correcto funcionamiento del concurso, tales como: intento de fraude, acceso no autorizado a recursos dentro y fuera de su computadora, modificación no autorizada de materiales y tecnologías del concurso, comportamiento de distracción para otros equipos, entre otras.

Todos los envíos (código fuente) a la plataforma serán supervisados por herramientas automáticas inteligentes de detección de plagio, así como por los jueces humanos. En caso de detectarse un comportamiento sospechoso, aún posterior a la competencia, un equipo podrá ser citado ante el Comité de Jueces para aclarar la situación y demostrar que realmente la solución es de su autoría.

Los entrenadores, durante la realización del concurso, no pueden comunicarse con sus equipos.

POSICIONES Y DESEMPATES

Un problema es respondido correctamente cuando así se reconoce por los jueces del concurso, que son los únicos responsables de juzgar (aceptar o rechazar) las posibles soluciones enviadas por los equipos. Las sentencias de los jueces son definitivas e inapelables.

Los equipos se ubicarán en la tabla de posiciones según la cantidad de problemas resueltos (en orden descendente). Los equipos que resuelvan la misma cantidad de problemas se clasificarán según el tiempo acumulado en la obtención de las soluciones (en orden ascendente). El tiempo acumulado es la suma del tiempo empleado en elaborar la solución de cada problema. Dicho tiempo es el transcurrido desde el inicio del concurso hasta el momento del envío aceptado, adicionando 20 minutos de penalización por cada envío rechazado al problema en cuestión (los Errores de Compilación no contarán en la penalización). Un problema no reporta tiempo si finalmente no es resuelto. Una vez que el problema es resuelto, los envíos subsiguientes al mismo problema no se considerarán.

Si después de lo anterior persisten empates entre equipos (lo cual no es típico), entonces se ubican según el menor tiempo consumido (sin incluir penalizaciones) del último problema resuelto por cada uno. En caso de continuar el empate, se les asigna la misma posición.

ENTORNO DE PROGRAMACIÓN

Durante el concurso los equipos pueden enviar sus soluciones en C/C++20, Java, Python3 o Kotlin. Antes del concurso los jueces escribirán soluciones para todos los problemas en esos lenguajes de programación con la excepción de Python3 y Kotlin. No se garantiza que soluciones correctas en Python3/Kotlin, para cualquier problema, serán capaces de correr dentro del tiempo límite establecido por los jueces de la competencia.

En la presente edición de la FC cada equipo podrá emplear una (1) computadora solamente.

El sistema BOCA será utilizado para gestionar el concurso.

PREMIOS

Todos los concursantes y entrenadores obtendrán certificados de participación. Además, se presentarán certificados que avalan los siguientes premios:

Nota: Un equipo podrá optar por esos premios si logra resolver al menos un problema del conjunto.

CLASIFICACIÓN A LA FINAL LATINOAMERICANA

Ver las reglas de promoción en este documento.

QUEJAS Y APELACIONES

Las irregularidades o faltas de conducta que se detecten durante el concurso deben ser presentadas inmediatamente ante el Director Ejecutivo, de modo que lo antes posible se puedan tomar las medidas pertinentes.

Aún después de terminado el concurso, en el plazo de 48 horas, se pueden presentar quejas y apelaciones. Los resultados son oficiales una vez concluya la gestión de quejas y apelaciones. Los siguientes aspectos deben ser considerados para presentar y resolver apelaciones:

Nota: Una apelación será rechazada de forma inmediata si no cumple estrictamente el procedimiento anterior.