MOJ MOJ Melhor Online Judge

⚖️ O papel .judge — juiz

⚖️
alguem.judge
Você decide os veredictos. Em provas com veredicto manual, nada chega ao competidor antes de dois juízes concordarem — e você é um deles. Você julga às cegas: não vê quem submeteu, nem o voto do outro juiz antes de dar o seu.

As telas dos exemplos estão em inglês — o padrão de uma prova internacional. Num contest em português, os mesmos botões aparecem traduzidos.

1. O que é o papel

Um login terminado em .judge é juiz da prova. Duas coisas te separam de um competidor: você vê os enunciados e pode submeter a qualquer momento (para testar os problemas), e você decide veredictos — mas fica fora do placar e das estatísticas.

O seu placar é sempre descongelado: juiz precisa ver a classificação real para trabalhar.
Não confunda o papel .judge com as máquinas de juiz. As máquinas que compilam e rodam o código são servidores com credencial própria; a conta .judge é uma pessoa decidindo veredicto.

2. Suas abas

AbaPara que serve
ContestOs problemas, com enunciado — você vê antes, durante e depois.
ScoreO placar, sempre descongelado.
ClarificationPerguntas dos times — você responde (seção 7).
⚖️ AvaliarA SUA fila — é onde você trabalha.
Todas SubmissõesTodas as submissões da prova, ANÔNIMAS para você (seção 6).
EstatísticasNúmeros da prova.
Duas abas que não são óbvias. Contest te dá os problemas com o enunciado, e você pode submeter a qualquer momento — antes, durante e depois: é assim que um juiz testa um problema, reproduz a reclamação de um time ou confere se um conserto consertou mesmo (as suas submissões nunca entram no placar). Statistics mostra como a prova está indo no todo — que problema ninguém resolveu, a onda de submissões por linguagem — e é o que aponta onde está o problema antes de alguém reclamar.

3. A fila de avaliação

A fila de avaliação: contadores no topo e uma linha por submissão com o veredicto computado, o status, quantos votos ela já tem e a ação disponível para você.

Os contadores dizem o formato do trabalho: quantas não avaliadas, quantas sendo avaliadas agora, quantas aguardando o 2º voto e quantas em conflito.

StatusO que quer dizer
openNinguém pegou — está livre para você pegar.
claimedAlguém está olhando agora.
votingJá tem um voto e precisa de mais um para fechar.
conflictOs juízes divergiram — só o juiz-chefe resolve.
"lotada (2)" / "você já votou"Na coluna de ação: a submissão já tem tantos juízes quanto o quórum, ou você já deu o seu voto. Vá para a próxima — claimed NÃO quer dizer "espere": até o quórum de juízes olham a mesma submissão ao mesmo tempo.

O veredicto que a máquina computou aparece colorido em cada linha. Ele é uma sugestão, não uma decisão: o seu trabalho é confirmar ou contrariar.

4. Avaliando, passo a passo

  1. Pegue — aperte Claim to evaluate. A submissão fica reservada para você por alguns minutos, para dois juízes não trabalharem na mesma.
  2. Olhe — o painel abre com o veredicto computado, o log (o que a máquina fez, teste a teste) e o code (a fonte que o time mandou).
  3. Vote — escolha o veredicto na lista e confirme. O seu voto é definitivo: não há desfazer.
É esta a tela logo depois de Claim to evaluate: a fila dá lugar ao painel de avaliação — veredicto computado como referência, links para o log e o código, a lista de veredictos e o relógio da sua reserva.

Repare que os contadores continuam no topo: enquanto você trabalha, ainda vê como a fila está. O log mostra o que a máquina fez teste a teste; o code é a fonte que o time mandou. Esses dois links estão sempre disponíveis a um juiz, independente do que a prova mostra aos competidores.

Fique de olho no relógio. A reserva dura 5 minutos; quando o contador zera o caso volta para a fila, e um voto enviado depois disso é recusado ("pegue a submissão antes de votar"). Se o caso é difícil, aperte +5 min ANTES de o tempo acabar; se não vai terminar, aperte Desistir e deixe outro juiz pegar. Enquanto o painel está aberto a página não recarrega sozinha — mas o relógio continua correndo.
Você só pode ter uma submissão aberta por vez. Vote ou desista antes de pegar outra.
Se o veredicto computado for Judge Error (ou outra falha de máquina), não vote. No modo manual o MOJ segura os erros de infraestrutura nesta mesma fila, para o competidor nunca os ver — mas votar transformaria um problema de máquina em veredicto contra um time inocente. Chame o juiz-chefe: rejulgar é dele. (Sem chefe por perto, o voto honesto é a opção "contact staff".)

5. Dois juízes têm de concordar

A regra do veredicto manual é simples: o resultado só chega ao competidor quando o número exigido de juízes (dois, por padrão) votar o mesmo veredicto. Aí o MOJ escreve no histórico do time e o placar se mexe.

Se os votos divergem, a submissão vira conflito e para ali: espera o juiz-chefe, que vê os dois votos com nome e decide. A sua parte termina no seu voto.

Votar já te libera — você pega a próxima enquanto a primeira ainda espera o segundo voto. É por isso que a fila anda mais rápido com mais juízes online.

6. Todas Submissões

Todas as submissões da prova, como um juiz as vê: horário, problema, veredicto e os links para o arquivo e o log. Não há coluna de usuário — e isso é deliberado.

É a visão panorâmica da prova: serve para perceber um problema que ninguém resolve, uma onda de Compilation Error nos primeiros minutos, ou uma linguagem se comportando de forma estranha. As duas listas do topo recortam por problema e por veredicto — você escolhe na lista, não tem o que digitar.

Para o juiz a lista vem anônima e ordenada por horário — as colunas de usuário e equipe simplesmente não existem, e o agrupamento "por usuário" some. A ordem cronológica faz parte da proteção: agrupada por time, a mera sequência entregaria quem é quem.

Os links ver e abrem o código, e a última coluna abre o log do julgamento. O juiz sempre tem acesso aos dois — esta é a tela para investigar "o que aconteceu naquela submissão" fora da fila de avaliação.

7. Por que você julga às cegas

Três vendas deliberadas protegem a lisura da prova — e você:

  • Na fila você não vê quem é o competidor.
  • Não vê o voto do outro juiz antes do seu (sem ancoragem).
  • Todas Submissões vem com as colunas de usuário e time vazias para você, e a lista é ordenada por horário para a ordem não entregar a identidade.
O juiz-chefe e o administrador veem os nomes — alguém precisa poder auditar. E ninguém, nem o juiz, vê quem fez uma pergunta na clarification.

8. Clarifications

As perguntas dos times chegam anônimas. Antes de responder, reserve a pergunta — é o que impede dois juízes de responderem a mesma coisa de formas diferentes.

A tela de clarifications: o formulário de aviso oficial em cima e as perguntas embaixo. A aberta mostra Claim to answer, a caixa de resposta e o checkbox que torna a resposta pública.

Uma resposta tem três destinos possíveis — e escolher certo faz parte de conduzir uma prova justa:

DestinoComoQuando usar
Privada Responder com a caixa pública desmarcada A pergunta é sobre a situação específica daquele time e não serve a mais ninguém.
Pública Marcar pública (todo o contest vê) antes de responder A resposta esclarece o enunciado ou uma regra. Se um time precisou perguntar, os outros precisam da resposta — e todos competirem com a mesma informação é o objetivo.
📣 Aviso oficial O formulário do topo: você escreve a pergunta e a resposta e publica as duas Você precisa anunciar algo e ninguém perguntou — uma errata, uma prorrogação, um aviso de sala. Sai assinado "Organização", sem autor.
Na mesma tela, embaixo: 📰 Contest news — um recado curto (com anexo opcional) que aparece na página inicial dos times. Use o aviso oficial para algo que muda a prova; a notícia para logística ("almoço a partir do meio-dia").
Resposta já dada não é editável por você — só pelo juiz-chefe ou pelo administrador. Leia duas vezes antes de enviar.

9. Quando não há fila

Nem toda prova usa veredicto manual. Se o organizador deixou a correção automática, a sua página Judge diz isso e não há o que julgar — o veredicto da máquina vai direto ao time. O seu papel passa a ser acompanhar as submissões, responder clarifications e ajudar nos problemas.

10. O aquecimento é o seu ensaio

Antes da prova acontece o aquecimento — uma rodada curta, no mesmo endereço, com os times já sentados. A fila que aparece ali é fila de verdade: submissões chegam, você pega, vota, e a regra dos dois juízes concordando vale igual. Use-o para conferir o que dói descobrir depois: se as opções de veredicto são as que esta prova quer, se o log e o code abrem na sua máquina, e se você e o outro juiz leem a mesma submissão do mesmo jeito.

E há um motivo duro para não deixar o aquecimento julgado pela metade: a promoção para a prova oficial é recusada enquanto houver submissão sem veredicto liberado. Fila de aquecimento abandonada segura literalmente o início da prova — o servidor confere a fila, os jobs em voo e os veredictos pendentes antes de deixar a organização trocar de rodada. Termine o que você pegou.
Quando a rodada é promovida, tudo do aquecimento é arquivado: fila, submissões, clarifications e placar. A prova oficial começa com o histórico vazio — nada do que você julgou ali conta, nem vaza, para a prova.

11. O que você não faz

TentativaResposta
Resolver conflito / contrariar um veredicto fechado403só o juiz-chefe
Ver os votos dos outros ou o painel de desempenho403
Editar resposta já dada / notícia já enviada403
Mudar as opções de veredicto ou a matriz de auto-veredicto403
Rejulgar submissões403
Fila de impressão, etiquetas, telão403
Qualquer tela de administração403

O juiz-chefe (.cjudge) → · Manual completo dos juízes