LaTeX Template para creación de statements para competencias de programación organizadas por Programación Competitiva UChile.
El ambiente problem recibe dos parámetros:
\begin{problem}{problem title}{time limit}{memory limit}
\end{problem}
El ambiente problemexamples es usado para colocar casos de prueba de ejemplo. Dentro de él, se usa el comando \testcase{i}
para hacer input de el caso de prueba número i
. Este macro buscará los archivos testcases/X/i.in
y testcases/X/i.out
, donde X
es la letra del problema en el que se usa.
\probleminputformat
: Crea una subsección para la descripción del input\problemoutputformat
: Crea una subsección para la descripción del output\testcase
para colocar un caso de prueba en el ambienteproblemexamples
. Recibe como parámetro el número del caso de prueba.
.
├── README.md
├── config.tex
├── logo.png
├── main.tex
├── preamble.sty
└── testcases
├── A
│ ├── 1.in
│ ├── 1.out
│ ├── 2.in
│ └── 2.out
├── B
├── C
├── D
├── E
├── F
.
.
.
config.tex
posee algunas configuraciones básicas del documento.logo.png
es el logo a usar en el template.main.tex
es el archivo principal, donde se tipean los problemas.preamble.sty
es el cuerpo del template.- En
testcases
se crea un subdirectorio para cada problema. Estos deben tener de nombre una letra mayúscula. Dentro de cada uno de estos, se crean los archivosi.in
ei.out
para cada caso de prueba de ejemplo a usar en el documento.
\begin{problem}{Problema de ejemplo}{2}{64}
Primer párrafo del problema de ejemplo.
Segundo párrafo del problema de ejemplo.
\probleminputformat
La primer línea contiene el número $n$ ($1 \leq n \leq 10^6$).
\problemoutputformat
Imprime \texttt{SI} si $n$ es par, e imprime \texttt{NO} en el caso contrario.
\begin{problemexamples}
\testcase{1}
\testcase{2}
\end{problemexamples}
\end{problem}
Nótese que deben existir los archivos testcases/A/1.in
, testcases/A/1.out
, testcases/A/2.in
y testcases/A/2.out
, asumiendo que es el problema A.
Este ejemplo es el que se encuentra en el main.tex
por defecto.
- Automatizar ambiente problemexamples (input automático de archivos existentes dentro del directorio del problema)