Maratona SBC de Programação

Regras

Mudanças nas regras para 2025

Escolas

A instituição de ensino superior e a cidade de onde vêm os alunos participantes definem uma escola. Uma instituição pode, portanto, ter diversas escolas - por exemplo a instituição USP tem as escolas USP-São Paulo, USP-São Carlos, USP-Ribeirão Preto, etc. A instituição também pode optar por inscrever alunos de diferentes cidades em um mesmo time e, neste caso, ela é considerada como uma escola para fins de alocação das vagas na Final Nacional. 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" caracterizando que são alunos de EAD.

Os times de uma escola devem ser inscritos em uma mesma sede, definida para sua região geográfica pelo Comitê Diretor da Maratona de Programação. 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.

Coaches/técnicos

O técnico é o representante do time junto à organização da competição e deve ser um docente da escola. Alternativamente, um docente da escola pode indicar um técnico não docente enviando este formulário preenchido ao Comitê Diretor da Maratona de Programação. Uma mesma pessoa pode ser registrada como técnico de mais de um time (inclusive de diferentes escolas) e uma mesma escola pode ter vários técnicos. O técnico é responsável pela inscrição dos times no evento. A participação do coach durante a competição não é obrigatória. O coach pode indicar, se assim desejar, um dos competidores para ser o representante da equipe.

Elegibilidade dos competidores e reservas

O time é composto pelo técnico e três alunos competidores. Opcionalmente, pode ter também um reserva. Competidores e reservas devem ser alunos regulares de cursos de graduação ou pós-graduação. Veja o item "Substituições" sobre a participação do reserva. Um time que compareça a uma competição com menos de três competidores não pode se qualificar para fases posteriores.

Um time é elegível se todos os competidores (e reserva) satisfizerem as regras do ICPC para as regionais:

Por exemplo, se você iniciou seu primeiro curso superior em 2021, pode participar, mesmo que tenha nascido em 1997. Se você nasceu em 2003 também pode participar, mesmo tendo iniciado sua graduação em 2019.

Exceção: A participação na regional de 2020 não é contada para o máximo de 5 participações em regionais, e a participação na Final Mundial de Moscou não conta para o máximo de duas participações em mundiais. Essas exceções não valerão mais a partir de 2025.

ATENÇÃO: Há a possibilidade de, em casos excepcionais (afastamentos por motivo de saúde, serviço militar, primeira graduação em área não relacionada, etc.), ser concedida uma extensão no período de elegibilidade de um competidor. Para isso o técnico deverá encaminhar um pedido ao comitê de elegibilidade do ICPC (detalhes aqui). Caso seu pedido seja atendido, envie uma cópia da mensagem do Comitê de Elegibilidade do ICPC ao Comitê Diretor da Maratona de Programação.

Competição e premiação

A Maratona SBC de Programação é composta de duas fases:

A fase zero é online e não obrigatória.

As provas têm duração de 5 horas, em que os times recebem diversos problemas computacionais. Vence a equipe que resolve a maior quantidade de problemas e, se houver empates, com o menor tempo corrigido.

O tempo corrigido é calculado pela soma dos tempos em que os problemas foram enviados corretamente, somado com uma penalidade de 20 minutos para cada submissão incorreta feita anteriormente para aquele problema. Se o empate persistir, considera-se vencedor o time cuja última submissão correta tenha sido feita mais cedo. Se ainda persistir o empate, segue-se à penúltima submissão correta, e assim por diante. Caso ainda haja empate, o Comitê Diretor da Maratona de Programação fará um sorteio entre os times envolvidos.

A primeira fase é feita em português e a final brasileira sempre em inglês. Os problemas podem ser resolvidos em qualquer linguagem de programação disponível (C, C++, Python, Java ou Kotlin) usando as bibliotecas disponíveis na instalação. Os times têm à sua disposição um computador. Na primeira fase podem levar para a competição o material escrito que desejarem (livros, cadernos apostilas). Na final brasileira poderão levar apenas um arquivo impresso, sem limite de páginas. Os times não podem fazer uso de material digital ou ter acesso à Internet durante a competição. Não podem portar aparelhos eletrônicos como celulares, smart watches, fones de ouvido, etc.

Na final Nacional serão reconhecidos os medalhistas de ouro (primeiro a quinto), prata (sexto a décimo) e bronze (décimo primeiro a décimo quinto). Serão reconhecidos também os campeões das 5 regiões do país, o melhor time feminino e o campeão da Maratona recebe o troféu "Maratona de Programação". Os times mais bem colocados classificam-se para as finais latino-americanas da competição.

Fases da Maratona e promoção