Entorno hardware y software

Los participantes lo harán utilizando equipos informáticos proporcionados por la organización, de modo que se garantizará la igualdad de condiciones entre todos ellos. En concreto, se hará uso de varios laboratorios de la Facultad de Informática desde la que se organiza la olimpiada.

Los ordenadores no tendrán ningún tipo de conexión a Internet salvo la necesaria para poder realizar los envíos al juez on-line.

Los ordenadores disponen de un procesador Intel Core i7 y cuentan con 16GiB de RAM. Tienen instalado tanto GNU/Linux como Windows por lo que los participantes podrán utilizar cualquiera de los dos. Eso sí, el entorno que habrá lanzado en el momento de inicio del concurso será GNU/Linux, por lo que aquellos que decidan utilizar Windows tendrán que reiniciar la máquina una vez comenzado éste.

Si bien Windows se ofrece como una opción, en general se recomienda el uso de GNU/Linux. El juez on-line se ejecuta sobre esa plataforma, por lo que el contexto de ejecución en las evaluaciones será más parecida a la que los participantes pueden tener usando GNU/Linux a la conseguida con Windows.

La lista completa de software instalado puede verse en el PDF publicado desde los laboratorios de la facultad. No obstante, indicamos aquí la parte más relevante:

Opción A: Linux
  • Sistema operativo: Ubuntu 20.04 LTS
  • Editores: atom, emacs, geany, gedit, kate, sublime text, MS VStudio Code.
  • Compiladores: gcc, g++, Oracle JDK 8
  • IDEs:
    • C/C++: CodeBlocks
    • Java: Eclipse 4
    • Python: Spyder 4.1.4 a través de Anaconda
Opción B: Windows
  • Sistema operativo: Windows 10
  • Editores: emacs, Notepad++, MS VStudio Code.
  • Compiladores: gcc (sobre MinGW), g++ (sobre MinGW), Oracle JDK 8, Oracle JDK 10
  • IDEs:
    • C/C++: Visual Studio 2019 Enterprise
    • Java: Eclipse
    • Python: Spyder 4.0.1
Documentación de las librerías de los lenguajes

Dado que los ordenadores no dispondrán de conexión a Internet, se tendrá acceso a copias locales de la documentación de las librerías de los lenguajes de programación:

  • C++: documentación para la Biblioteca Estándar de Plantillas (STL) de C++ tal y como se encontraba en la página web de SGI (accesible por ejemplo en la página de Boost).
  • Java: documentación de OpenJDK (similar a la disponible online).
  • Python: documentación oficial de Python para la versión 3.8.8. Puedes ver una muestra (para una versión ligeramente distinta) aquí.
Al ser una versión descargada para uso offline de la documentación, no dispone de posibilidad de búsqueda.