Reglas Olimpiada Dominicana de Informática

Problemas

Todos los problemas de la ODI están diseñados para ser algorítmicos. Para cada problema se especificará, entre otras cosas, los límites de memoria y tiempo. Se le avisa a los concursantes someter soluciones que pasarán todos los ímites establecidos para cada problema.

Descripción de problemas

Cada problema especificará:
  1. La tarea a resolver
  2. El rango de los valores de entrada
  3. Los límites de los recursos computacionales (memoria y tiempo de procesamiento)
  4. Cualquier otra restricción para un problema

Puntuación y Ranking

  1. Cada problema tendrá una puntuación máxima establecida antes de iniciar la competencia.
  2. Los problemas tienen distintos casos de prueba. La puntuación para una solución se determinará bajo la siguiente fórmula: (casosAprobados/totalCasos) * PUNTUACION_PROBLEMA. Cada concursante puede enviar múltiples soluciones a un problema. Para fines de puntuación, se determinará la mejor de todas. No hay penalidad por subir más de una solución a un problema.
  3. En la tabla de posiciones están ordenados los competidores descendentemente por la suma de las puntuaciones de los problemas individuales.

Notas

Notas generales

  1. Nunca termines tus programas esperando entrada del usuario (ej.: que presionen enter para terminar). Esta una práctica común entre los que programan con algún IDE, y lo hacen porque Windows cierra la consola desde que el programa termina. Si envías una solución de esta manera, esta tomará demasiado (se quedará esperando entrada, y nunca llegará), lo que causará un veredicto incorrecto por límite de tiempo excedido. Si quieres probar tus programas, abre una consola (cmd.exe) y localízate en el lugar que se encuentra el ejecutable de tu solución. Si lo haces así, nunca tendrás problemas.

C/C++

  1. Recuerda que conio.h NO es una librería estándar (sólo funciona en algunos compiladores para Windows). Si la incluyes en tus programas, los mismos NO compilarán en SPOJ.
  2. Por la razón anterior, getch() tampoco funciona. Utiliza en cambio getchar(), que se encuentra en stdio.h

C#

  1. El compilador que usa este juez es Mono C# Compiler v2.0.1. No es el compilador de Microsoft, y este soporta C# hasta la versión 3.0.
  2. No utilices espacios de nombres que no necesites. Si trabajas con Visual Studio y este te incluyó la siguiente línea: using System.Threading.Tasks; al principio de tu archivo fuente, bórrala, pues aquí te produciría un error de compilación.

    La cabecera de un archivo en C#, en general, debería tener sólo lo siguiente:
    using System;
    using System.Collections.Generic;
    using System.Text;

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.