Formato do problema (ZIP manual)
Para a maioria dos autores, o Problem Creator (CDP) ou o editor no site basta. Esta página é para empacotar manualmente um .zip quando você precisa de controle total (por exemplo Karel, tarefas interativas ou validadores personalizados).
Layout do ZIP (resumo)
Use .zip (não RAR/7z). O nome do arquivo é arbitrário.
problem.zip
├── cases/
├── statements/
├── solutions/
├── interactive/
├── validator.cpp
├── settings.json
├── limits.json
└── testplan
Referência no repositório: frontend/tests/resources/testproblem.zip.
O que se configura
| Área | Significado |
|---|---|
| Tipo de validador | token, sem maiúsculas, tolerância numérica, “stdout como pontuação” (interativo) ou custom validator.<lang> |
| Linguagens | Modos: linguagens normais, Karel, somente saída (.zip de respostas; caso único pode ser Main.in/Main.out), sem envios |
| Limites | Tempo CPU, tempo total, validador, memória (KiB), tamanho de saída |
| Limite de código | Tamanho máximo do fonte |
| Público / tags / fonte | Visibilidade e atribuição |
cases/
- Pares
.in/.outcom o mesmo prefixo. - Agrupamento: ponto no nome, ex.
grupo1.casoa.in. - ZIPs muito grandes deixam o julgamento lento.
statements/
- Markdown por idioma. Pré-visualização: omegaup.com/redaccion.php.
solutions/
Opcional. Exemplos em frontend/tests/resources.
interactive/ e libinteractive
libinteractive. Exemplo: Cave (IOI 2013).
Validador customizado (validator.<lang>)
Um arquivo na raiz entre validator.c, validator.cpp, validator.java, validator.p, validator.py. Deve imprimir float em [0, 1]; vazio → JE.
Manual longo: Manual-for-Zip-File-Creation-for-Problems.md.
testplan
Pesos por grupo ou repartição uniforme; ver testproblem.zip.