Maratona de Programação

Regras

Estas regras foram aprovadas pelo Comitê Diretor da Maratona Mineira de Programação para vigorarem a partir do ano de 2016.


Formação dos times

Os times representam instituições de ensino superior, aqui chamadas de escolas. Uma escola é definida pela instituição de ensino superior e a cidade de onde vêm os alunos participantes do time. Assim, por exemplo, a UFU poderá ter times de várias escolas: UFU-Uberlândia, UFU-Monte Carmelo, etc. No caso de um curso a distância, a escola poderá ser definida pela instituição de ensino superior e o polo de onde provêm os estudantes ou, no caso do time combinar alunos de vários polos, a instituição de ensino superior e o adjetivo "virtual" para caracterizar que são alunos de EAD.

Os times são formados por um coach e três alunos regularmente matriculados desta instituição. Uma mesma instituição terá um time inscrito no concurso. A aceitação de mais de um time de uma escola está sujeita à capacidade da sede em que a inscrição se realiza e será atendida por ordem da classificação do ano anterior.

O concurso se destina a alunos de instituições superiores tipicamente da área de computação (Ciência da Computação, Engenharia de Computação, Sistemas de Informação, etc) e áreas afins (Matemática, Física e Engenharias). Não há impedimentos à participação de alunos de outros cursos. O coach será o representante do time junto à organização do concurso e deverá ser um docente desta escola ou deverá ser indicado (através deste formulário) para a função por um representante desta escola. O mesmo coach poderá representar vários times da escola. Uma mesma escola pode ter vários coaches.

Cada time é composto por três alunos e, no máximo, um reserva. Todos devem ser alunos regulares de cursos de graduação ou pós-graduação da escola. A participação do reserva no concurso se dará apenas em caso de algum problema ocorrer com um dos participantes antes da realização do concurso, e a substituição deverá ser comunicada ao Comitê Diretor da Maratona Mineira de Programação até, no máximo, a véspera da competição. Depois de iniciado o concurso não há possibilidade de substituições no time. Só será aceito a troca de componentes de um membro da equipe, no máximo, na véspera da competição.

Um time é elegível se todos os seus membros (competidores e reserva) satisfizerem a condição abaixo:

  • cada membro, antes desta competição, pode ter participado de no máximo uma final mundial do ICPC da ACM, quatro regionais sul-americanas do concurso (ou seja, da Maratona de Programação), cinco concursos da Maratona Mineira de Programação e deve ter iniciado seus estudos universitários no ano de 2012 ou anos posteriores (a contar do início do primeiro curso universitário do aluno), ou ter nascido em 1993 ou anos posteriores.

Assim, por exemplo, se você iniciou seu primeiro curso superior em 2012, pode participar, mesmo que tenha nascido em 1986. Outro exemplo, se você nasceu em 1993 pode participar, mesmo tendo iniciado sua graduação em 2010.

Apresentamos abaixo novamente as regras, agora em forma de um "programa" para verificar se o competidor é ou não elegível:

  • [regras de participação]
  • se o competidor já participou de duas finais mundiais, ele não é elegível
  • se o competidor já participou de cinco regionais, ele não é elegível
  • se o competidor já participou de seis regionais, ele não é elegível
  • [período de elegibilidade]
  • se o competidor iniciou seus estudos universitários no ano 2011 ou anos anteriores E o competidor nasceu em 1992 ou anos anteriores), ele não é elegível;
  • caso contrário, o competidor é elegível.

ATENÇÃO: Conforme descrito nas as regras das regionais do ICPC há a possibilidade de, em casos excepcionais (afastamentos por motivo de saúde, serviço militar, etc) ser concedido uma extensão no período de elegibilidade de um competidor. Para isso o coach deverá encaminhar um pedido ao comitê de elegibilidade da Maratona Mineira de Programação (rcosta62br@gmail.com).


Inscrição de times

  • Sede

Cada instituição deverá inscrever seus times no site designado pelo comitê.


Formato do concurso

Na Maratona Mineira de Programação os times receberão uma prova com diversos problemas que devem ser resolvidos durante 5 horas de competição. A prova estará em português. Os problemas deverão ser resolvidos em alguma das linguagens de programação disponíveis. Os programas deverão ser feitos em C, C++ ou Java. Os times poderão resolver um problema da prova em uma linguagem de programação e um outro problema em outra linguagem, sem qualquer prejuízo. Para a implementação os times terão à sua disposição um computador e todo o material escrito que desejarem. Entretanto, não poderão fazer uso de material armazenado em meio digital ou ter acesso à Internet durante a competição.

Quando um time julgar que tem um programa que resolve um problema, ele pode submetê-lo à correção dos juízes, que compilam e executam este programa para uma bateria de testes desconhecida dos times. Um problema é considerado resolvido se, para todos os testes da bateria, ele devolve o resultado esperado pelos juízes. Para cada submissão o time recebe uma resposta, que pode ser satisfatória (e o problema está resolvido pelo time) ou indica algum erro ocorrido, como: resposta errada, tempo de execução excedido, erro de execução, erro de compilação, etc.

O time vencedor é aquele que resolve a maior quantidade de problemas nas 5 horas de competição. Empates no número de problemas resolvidos são classificados pelo tempo corrigido. Ganha aquele que tem o menor tempo corrigido. O tempo corrigido do time é dado pela soma dos tempos corrigidos somente dos problemas corretamente resolvidos pelo time. O tempo corrigido de um problema é dado pelo número de minutos decorridos desde o início da competição até o momento da primeira submissão correta somado com uma penalidade de 20 minutos por submissão incorreta feita anteriormente neste problema. Em caso de empate, será considerado vencedor o time cuja última submissão correta tenha sido feita mais cedo. Persistindo o empate, passará à penúltima submissão correta e assim por diante. Se persistir o empate a organização fará um sorteio entre os times envolvidos.

A organização da competição é responsável pela decisão de qualquer caso não previsto. Os times inscritos permitem o uso e divulgação de suas imagens e dos programas submetidos pela organização da competição.


Premiação

A Maratona Mineira de Programação oferece medalhas aos dez primeiros colocados da competição: ouro para os três primeiros; prata para o quarto, quinto e sexto; e bronze para o sétimo a décimo lugares. Além disso, o time campeão recebe uma cópia do troféu "Maratona de Programação".


Recursos

Apenas o coach do time poderá recorrer à organização do evento caso julgue que seu time tenha sido prejudicado durante a competição. Qualquer recurso deve ser inicialmente enviado ao diretor da Maratona Mineira de Programação dentro de dois dias úteis a contar do dia da realização do concurso. O Comitê Diretor da Maratona Mineira de Programação decidirá sobre o caso nos três dias úteis seguintes. Os resultados da Maratona Mineira de Programação serão finais apenas quando todos os recursos tiverem sido julgados.

Um recurso deve estar baseado em uma ou mais das circunstâncias a seguir: violação de uma regra, má conduta de um time ou má conduta da administração do concurso com intenção de prejudicar. As decisões dos juízes são finais. Não cabe recurso quanto a julgamento de problemas.