Comité Científico ICPC Bolivia
Llamado a Problemas - Fase Nacional 2 2026
Formulario oficial de envío: https://icpcbolivia.org/2026/llamado-a-problemas/enviar
Consultas - Comité Científico ICPC Bolivia: comite.cientifico@icpcbolivia.org
Fecha límite de recepción: 7 de septiembre de 2026 viernes 11 de septiembre de 2026, 23:59 (UTC-4)
Fecha del concurso: 19 de septiembre de 2026
El Comité Científico de la ICPC Bolivia, convoca cordialmente a docentes, entrenadores, ex-olímpicos y entusiastas de la programación competitiva a contribuir con propuestas de problemas algorítmicos, para ser utilizados durante el evento.
Sobre el concurso
La Competencia Boliviana de Programación es la Nacional Fase 2 de la temporada ICPC Bolivia 2026 y se desarrolla bajo el modelo de la ICPC (International Collegiate Programming Contest). Junto con la Nacional Fase 1 (Maratona de Programação, 29 de agosto de 2026), constituye una de las dos instancias clasificatorias al ICPC Regional Bolivia, que se realizará el 7 de noviembre de 2026.
Está dirigido exclusivamente a estudiantes universitarios, quienes participan en equipos conformados por tres integrantes y un entrenador. Los equipos deben participar en ambas fases nacionales para poder clasificar a la Regional, y es posible obtener cupos de clasificación tanto en la Fase 1 como en la Fase 2.
Al tratarse de una competencia clasificatoria, el set de problemas debe permitir discriminar con claridad entre los equipos del podio, sin dejar a los equipos menos experimentados sin problemas resolubles. Esto exige un abanico completo de dificultades, desde problemas accesibles en los primeros minutos hasta desafíos que probablemente nadie resuelva.
Requisitos de los problemas por niveles de Dificultad
Los problemas del concurso deben seguir el formato ICPC (un solo bloque de puntaje, sin subtareas), y estar clasificados de acuerdo a los niveles de dificultad descritos más adelante. Además, deben cumplir con los siguientes criterios:
- No deben haber sido utilizados en competencias anteriores ni estar publicados en línea. En lo posible, deben ser originales o, al menos, adaptaciones significativas de problemas existentes (citando la fuente).
- El problema debe incluir límites de entrada bien definidos, adecuados al tipo de solución esperada, y con complejidad algorítmica factible de resolver en tiempo límite estándar (1s–3s por caso)
- Cada problema debe incluir una solución oficial válida y eficiente, que haya sido probada con múltiples casos, incluyendo casos límite.
- Debe seguir el formato clásico ICPC: leer desde stdin, imprimir en stdout, sin interactividad.
La siguiente guía te ayudará a categorizar tu propuesta:
Problema Fácil
Problemas diseñados para introducir a los participantes al formato del concurso y permitir que todos los equipos puedan resolver al menos uno o dos problemas.
- Pueden resolverse con estructuras y conceptos básicos: condicionales, bucles, arreglos, strings, operaciones aritméticas simples.
- No requieren optimización ni análisis profundo de complejidad.
- Pueden resolverse con fuerza bruta directa sin penalización por tiempo de ejecución.
- Pensados para ser resueltos en los primeros 15–30 minutos del concurso por la mayoría de los equipos.
Ejemplos comunes:
- Conteo de elementos según una condición.
- Simulación simple paso a paso.
- Procesamiento de strings con bucles.
- Sumas o comparaciones directas.
Problema Medio
Problemas diseñados para servir como punto intermedio entre lo introductorio y lo algorítmico, permitiendo diferenciar a los equipos con habilidades básicas bien consolidadas.
- Requieren estructuras de datos estándar (map, set, vector, pair, etc.) y lógica condicional algo más elaborada.
- Se espera que los participantes analicen la complejidad y apliquen mejoras simples (por ejemplo, pasar de O(n^2) a O(n \log n)).
- Suelen involucrar patrones clásicos o combinatoria simple.
Ejemplos comunes:
- Búsqueda binaria en arreglos ordenados.
- Algoritmos greedy elementales.
- Simulación con validaciones y estados múltiples.
- Recursión sin memoización.
Problema Difícil
Problemas diseñados para distinguir a los equipos más avanzados, que dominan técnicas algorítmicas fundamentales y pueden resolver problemas con múltiples componentes.
- Requieren aplicar uno o más algoritmos clásicos bien conocidos.
- Los errores de implementación o bordes mal manejados pueden hacer fallar el programa.
- Deben ser resolubles dentro del tiempo límite por equipos entrenados, pero no por todos.
Temas comunes:
- Algoritmos sobre grafos (componentes conexas, detección de ciclos, Dijkstra, etc).
- Estructuras de datos como Union-Find (DSU).
- Recursión con memoización.
- Algoritmos de ordenamiento personalizados o simulaciones complejas.
Problema Muy Difícil
Problemas diseñados para servir como desafío final. Se espera que ningún equipo lo resuelva fácilmente, ni siquiera los más experimentados.
- Involucran ideas no triviales y conexiones entre varias técnicas.
- Requieren análisis profundo, observación de propiedades o incluso diseño de estructuras personalizadas.
- Puede implicar la invención de una solución o una transformación ingeniosa del problema.
- Tienen una implementación propensa a errores, con numerosos casos borde.
- Sólo los equipos más fuertes logran resolver este tipo de problemas al final del concurso o en simulacros especializados.
Ejemplos posibles:
- Combinatoria avanzada con análisis de invariantes.
- Teoría de números no elemental (exponenciación modular con condiciones).
- DP con múltiples dimensiones, restricciones complejas o bitmasks.
- Segment Tree con operaciones personalizadas.
- Algoritmos no estándar aplicados a grafos (2-SAT, bridges/articulation points, árboles dominadores).
- Diseño de estructuras eficientes para responder queries offline/online no triviales.
Incentivo por problemas seleccionados
Los problemas seleccionados serán remunerados según el nivel de dificultad, reconociendo el trabajo técnico y creativo de los autores. Los montos fueron actualizados para la temporada 2026 considerando la inflación acumulada y la pérdida de poder adquisitivo del boliviano respecto a la convocatoria anterior:
| Dificultad | Pago por problema (BOB) |
|---|---|
| Difícil | 300 |
| Medio | 200 |
| Fácil | 70 |
Nota: El Comité Científico tendrá la última palabra sobre la asignación del nivel de dificultad de cada problema, y dicha clasificación será comunicada oportunamente al autor.
Contenido mínimo de la propuesta
Cada problema propuesto debe incluir:
- Enunciado claro (preferiblemente en formato Markdown).
- Descripción de la solución principal (algoritmo esperado), con código de preferencia en C++.
- Casos de prueba representativos o idea para generarlos.
- Datos del autor (nombre, email, afiliación, si es exolímpico, etc.)
- Fuentes de inspiración o problemas similares utilizados como referencia (si aplica).
Puedes descargar un ejemplo de propuesta completa aquí:
Descargar plantilla de propuesta de problema (ZIP)
Envío de propuestas
Las propuestas se reciben exclusivamente a través del formulario oficial:
https://icpcbolivia.org/2026/llamado-a-problemas/enviar
Un envío por problema. Si deseas proponer más de un problema, completa el formulario una vez por cada uno.
Agrupa todos los archivos de tu propuesta en un único archivo .zip o .tgz y adjúntalo en el formulario. Nombra el archivo con el formato:
CBP2026_<apellido-autor>_<nombre-corto-del-problema>.zip
Al enviar el formulario recibirás un correo automático de confirmación con un identificador de propuesta. Si no lo recibes dentro de las 24 horas, escribe a comite.cientifico@icpcbolivia.org.
Consideraciones
- Un envío por problema. Cada autor puede proponer tantos problemas como desee, pero debe completar el formulario una vez por cada uno; no se aceptan envíos que agrupen varios problemas.
- El material enviado será confidencial hasta la finalización del evento.
- El contenido enviado no ha sido publicado ni utilizado en otras competencias, y no será compartido con terceros hasta que finalice el evento.
- Al enviar un problema, el autor otorga a ICPC Bolivia el derecho exclusivo de uso del material hasta la finalización del evento, y una licencia no exclusiva, transferible y perpetua para su reproducción con fines educativos y académicos.
- Cualquier consulta adicional puede enviarse a comite.cientifico@icpcbolivia.org.
- En caso de que la propuesta sea seleccionada, el nombre del autor podría aparecer (previa autorización) en las páginas oficiales de ICPC Bolivia 2026.
- No podrán utilizar el problema enviado, variantes del mismo ni técnicas específicas en ninguna otra competencia o entrenamiento hasta que finalice el evento.
- Los autores de problemas seleccionados no podrán competir en la Nacional Fase 2 ni asesorar a equipos participantes, por evidente conflicto de interés.
¿Qué sucede luego del envío?
- El Comité Científico confirmará la recepción del problema por correo electrónico.
- Todas las tareas serán evaluadas cuidadosamente.
- Se seleccionará una lista corta de tareas candidatas, de las cuales se elegirán las que conformarán en los concursos.
- Los autores recibirán retroalimentación sobre su propuesta, ya sea que haya sido seleccionada o no.
- Las tareas utilizadas en la competencia estarán disponibles posteriormente bajo una licencia Creative Commons Atribución (CC-BY).
- Los autores podrán ser invitados a participar como jurado u observadores académicos si así lo decidiera el comité ejecutivo de ICPC Bolivia.
Agradecemos profundamente su colaboración para seguir fortaleciendo el talento en programación competitiva en Bolivia.
¡Esperamos sus propuestas!