Antes del concurso
Pueden participar los alumnos que el curso correspondiente estén matriculados en ESO, bachillerato o ciclos formativos de grado medio en un centro educativo de la Comunidad de Madrid siempre y cuando no tengan más de 20 años el 1 de julio del año de la presente edición.
No, los estudiantes de Ciclos Formaticos de Grado Superior no pueden participar en la Olimpiada Informática Española. Pueden, eso sí, participar en ProgramaMe, un concurso similar centrado en esos ciclos.
El temario viene definido por la normativa de la Olimpiada Informática Internacional (el Syllabus de la IOI). La cantidad de temas incluidos en el syllabus es muy amplio y puede resultar intimidatorio. Se debe tener en cuenta que para participar en la olimpiada no es necesario conocerlos todos, aunque cuantos más conceptos y algoritmos se conozcan mayor será la probabilidad de resolver los ejercicios. Puedes encontrar detalles sobre cómo prepararte aquí.
Los lenguajes de programación admitidos en la Olimpiada Informática de Madrid son C, C++, Java y Python 3.
No. Si no sabes programar y vas a aprender un lenguaje para presentarte a la olimpiada, es mejor que te centres en C++ o en Java.
Esto no significa que Python sea un mal lenguaje; de hecho, no solo es considerado por muchos un lenguaje muy bueno para introducirse en la programación, sino que sus ricas librerías permiten hacer cosas fabulosas con él en muy poco tiempo.
Pero para los concursos de programación no es demasiado apropiado y de hecho en la final internacional de la olimpiada no se admite, o se hace pero sin garantizar que todos los problemas puedan ser resueltos con él.
En la Olimpiada Informática de Madrid se hace un esfuerzo por conseguir que todos los problemas puedan ser resueltos en todos los lenguajes, pero no siempre es posible conseguirlo. En ocasiones, Python se ve perjudicado por ser lento en ejecución y C se ve perjudicado por tener una librería estándar menos extensa y por tanto requerir más esfuerzo de programación.
La participación es individual. No obstante, os animamos a que entrenéis con otros compañeros.
Durante el concurso
¡No! El juez comprueba la validez de la respuesta con unos casos de prueba mucho más extensos que los casos de ejemplo. El ejemplo sólo se muestra para dar una idea de cómo será la entrada y como deberá ser la salida, reforzando así la explicación del enunciado. Pero que el programa funcione con los casos de ejemplo no significa que sea correcto.
No. El sistema automatizado de juez probará cada solución enviada con una batería de casos de prueba que no será hecha pública. Esto añade cierta dificultad a la resolución, dado que los participantes no podrán depurar su solución con los casos de prueba que han ocasionado la ejecución errónea.
No. Cada problema puede ser resuelto en el lenguaje de programación que el participante prefiera en cada momento (dentro, obviamente, de los admitidos). Incluso se permite enviar una solución a un problema en un lenguaje y en un segundo envío (asumiendo que el primero no era correcto) cambiar a un lenguaje diferente.
¡En abstoluto! En concreto, no se debe asumir que el primer problema será el más fácil. Al comenzar el concurso, los participantes deberían hacer una primera lectura de todos los problemas para identificar los más fáciles y seleccionar por cuál empezar.
Después el concurso
El participante mejor clasificado en la competición se clasifica automáticamente para la Olimpiada Informática Española.
Dependiendo del número global de participantes y otros factores, es posible que el segundo clasificado también pueda clasificarse. Esa decisión es tomada por los responsables de la OIE y cambia entre una edición y otra.
Es habitual que la propia organización de la Olimpiada Informática Española asuma el coste del viaje del primer clasificado. No obstante, esto puede variar entre ediciones.
En caso de que exista plaza en la OIE para el segundo clasificado, sus gastos no suelen estar cubiertos.