Primeira Fase: 22 de setembro de 2007
Final Brasileira: 9 e 10 de novembro de 2007
Regras
A XII Maratona de Programação faz parte da Regional Sul-Americana do Concurso de
Programação da ACM. Assim,
as regras das
regionais se
aplicam neste concurso no tocante à formação dos times, pontuação e
classificação para as finais mundiais do Concurso da ACM.
Realização da XII Maratona de Programação
Neste ano a XII Maratona de Programação ocorrerá em duas fases.
A primeira fase da
Maratona será no dia 22 de setembro de 2007 em várias
sedes no país aprovadas pelo
Comitê Diretor da Maratona. As inscrições para
sediar a primeira fase devem ser feitas ao
Comitê Diretor da Maratona até 22 de maio, e as sedes aceitas
estarão cadastradas no site do ICPC até 15 de junho .
As inscrições dos times devem estar completas (veja as
informações sobre inscrições) até 12 de setembro. A prova da
primeira fase será a mesma para todas as sedes, e o responsável pela
sede garantirá as condições para a realização do concurso local. Os resultados
das sedes deverão ser enviados ao
Comitê Diretor da Maratona até 25 de
setembro de 2007.
O Comitê Diretor informará até 1 de outubro de 2007
as equipes classificadas para a final
brasileira, que se realizará nos dias 9 e 10 de novembro.
As despesas dos times durante a final serão cobertas pela organização. Poderá
haver ajuda parcial para o transporte dos times mais distantes
ao local da final brasileira.
Inscrição de times e classificação para a final brasileira
Na primeira fase da Maratona cada instituição poderá inscrever seus times
na sede em que julgar mais conveniente. A fase final
da Maratona de Programação ocorrerá nos dias 9 e 10 de novembro,
e contará com cerca de 30 times classificados. Cada
escola poderá ter no máximo dois times nesta final.
As vagas na final brasileira
serão distribuídas pelas sedes que tiverem atingido o mínimo de
6 times e 3 escolas participantes na sede. O número de vagas
da sede será definido como descrito abaixo
e estas vagas
serão ocupadas pelos primeiros classificados desta sede, desde que tais times
tenham resolvido pelo menos dois problemas na prova da primeira fase:
- [regra 1]
10 vagas serão distribuídas entre as sedes que contarem com a
participação de um time de escola que recebeu medalha na Maratona de Programação 2006;
- [regra 2]
cerca de 20 vagas serão distribuídas entre as sedes de acordo com o
número de escolas
participantes naquela sede através da fórmula:
NúmerodeVagas = arredonda(20 * NumerodeEscolasnaSede / TotaldeEscolas).
Havendo vagas restantes, estas serão atribuídas por decisão do Comitê Diretor da XII Maratona de Programação
sob forma de incentivo ao crescimento de sedes ainda não
contempladas onde tenham competido times que tenham resolvido mais de
um problema da prova, ou por outros critérios que serão divulgados na
ocasião da definição dos times participantes da final.
Formação dos times
Cada time representa uma instituição de ensino superior, e é formado por um
coach e três alunos desta instituição. Uma mesma instituição pode ter vários
times participantes da primeira fase do concurso. A aceitação de mais de dois
times de uma escola
está sujeita à capacidade da sede em que a inscrição se realiza e será
atendida por ordem de chegada.
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 Engenharia).
O coach será o
representante da instituição junto à organização do concurso e deverá ser um
docente desta instituição ou deverá ser indicado (através deste formulário) para a função por um
representante da instituição. O mesmo coach poderá representar todos os times
da instituição. Os times da instituição poderão ser inscritos em
qualquer das sedes brasileiras aceitas pelo Comitê Diretor do concurso. Todos
os times da instituição devem competir na mesma sede.
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 instituição
de ensino. 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 XII Maratona 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.
Um time é elegível se todos os seus membros satisfizerem a condição abaixo:
- cada competidor, antes desta competição, pode ter
participado de no máximo uma final
mundial do concurso da ACM, de no máximo 4 (quatro)
regionais sul-americanas do concurso (ou seja, da Maratona
de Programação) e deve ter iniciado
seus estudos universitários no ano de 2003
ou anos posteriores (a contar
do início do primeiro curso universitário do aluno),
ou ter nascido em 1984 ou anos posteriores.
Ou, reescrevendo de outra forma, siga o seguinte "programa" para verificar se o
competidor é ou não elegível segundo as regras:
A árvore de decisão no link
explica novamente a regra de elegibilidade de cada componente.
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 do ICPC (veja
nas regras como proceder). Caso seu pedido seja atendido, envie uma cópia da
mensagem do Comitê de Elegibilidade do ICPC ao Comitê Diretor da Maratona.
Em caso de dúvida, entre em contato com o
Comitê Diretor da Maratona.
Formato do concurso
Em cada uma das fases da Maratona de Programação os times receberão uma prova
com diversos (entre 6 e 10) problemas que devem ser resolvidos durante 5 horas
de competição. A prova da final brasileira será escrita em inglês. A prova da
primeira fase poderá ser em português. Os problemas deverão ser resolvidos em
alguma das linguagens de programação disponíveis. Na final brasileira os programas deverão ser feitos em
C, C++ ou Java. Na primeira fase, se o diretor da sede achar conveniente,
programas em Pascal podem também ser aceitos. Os juízes do concurso,
entretanto, não terão soluções dos problemas implementadas em Pascal.
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 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 com a
primeira submissão correta. Persistindo 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 e qualificação para as finais mundiais
A Maratona de Programação da SBC oferece medalhas aos dez primeiros colocados
na fase final 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".
O time campeão da Maratona de Programação garante vaga nas finais
mundiais do concurso de programação da ACM. Caso o Brasil
receba outras vagas da regional
sul-americana da competição, estas serão ocupadas pelos primeiros colocados da
final brasileira, respeitado o limite de uma vaga por instituição, conforme
regra do ICPC.
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
de Programação dentro de dois dias úteis a contar do dia da realização do
concurso. O Comitê Diretor da Maratona de
Programação decidirá sobre o caso nos três dias úteis seguintes. O Comitê
Diretor da Maratona de Programação encaminhará o recurso e a decisão local ao
Regional Contest Director da Regional Sul-Americana do ICPC. Os resultados da
Maratona 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 um julgamento de um problema.
Qualquer dúvida a respeito das regras deve ser encaminhada
ao Comitê Diretor da Maratona de
Programação.