MOJ: Enviar soluções (linguagens e entrada/saída) — MOJ docs

MOJ: Enviar soluções (linguagens e entrada/saída)

Este manual virou uma página do próprio MOJ:

📖 /treino/ajuda/

No site: Ajuda, no menu do topo. E também no link "📖 Como enviar", ao lado do seletor de linguagem, na hora de enviar a solução. Vale dentro de um contest também: é a única página fora de /contest/ que o contest-guard deixa abrir no subdomínio da prova (lá ela veste o topbar do contest e obedece o LOCALE dele), porque o competidor precisa dela na LAN isolada.

A página ensina o mesmo que este arquivo ensinava, e é onde o conteúdo passa a viver:

  1. Entrada e saída: o programa lê do stdin, escreve no stdout e nunca abre arquivo.
  2. A extensão é a linguagem: pelo editor, o menu decide (o código vira solution.<ext>); por arquivo, a extensão do arquivo decide e o menu é ignorado.
  3. Tabela de linguagens, com o id (que é a extensão) e a observação de cada uma.
  4. Template de código de cada linguagem: o esqueleto que o editor entrega e uma solução completa, com botão de copiar.
  5. Avisos: a classe public do Java, .pl que é Prolog e não Perl, Python que é pypy3, e a pilha de 128 MB.

Por que virou página, e não um .md

O conteúdo é web/treino/ajuda/ (a página) e web/treino/ajuda/exemplos.js (as soluções completas). Para acrescentar uma linguagem à tabela, mexa em web/shared/languages.js. Para acrescentar uma solução de exemplo, rode o código antes e acrescente em exemplos.js.

Para onde ir agora