Semana da Computação do ICT/UNIFESP 2019
VI Maratona de Computação da Unifesp:
A Maratona de Programação da UNIFESP é inspirada na Maratona de Programação da SBC, que faz parte da regional sul-americana da competição internacional ACM ICPC. A Maratona é destinada a alunos com interesse em programação e promove nos alunos a criatividade, a capacidade de trabalho em equipe, a habilidade de resolver problemas sob pressão e a capacidade de desenvolvimento de soluções computacionais corretas e eficientes em curto espaço de tempo.
Pré-requisitos para inscrições:
Para participar da competição, você deverá estar inscrito na SComp e na Maratona de Programação da Unifesp. A inscrição nesta competição deverá ser feita individualmente através do sistema SIEX, informando os dados do participante. Por questões de espaço, o limite de vagas será de 80 pessoas.
Formação de equipes:
Cada equipe inscrita poderá ter até 3 integrantes. As equipes poderão ser formadas até o início do evento, devendo ser informada a composição de cada equipe à equipe organizadora da competição durante a etapa de aquecimento. Um membro de cada equipe deverá ter uma conta criada na plataforma URI, que será utilizada para submeter soluções da equipe.
Aquecimento e prova:
Haverá um período de aquecimento de 1 hora para organização das equipes no laboratório, cadastro das equipes no sistema de submissão de soluções e uma pequena prova de aquecimento com algumas questões no mesmo formato da prova para que os participantes possam testar o computador e o ambiente utilizado para submissão das soluções. A prova da competição começará após esse período de aquecimento.
Regras:
A prova terá duração de 3 horas.
Será permitido apenas consulta a material impresso.
Não é permitido o acesso a conteúdos da Internet.
Cada equipe poderá utilizar apenas um computador para desenvolver e submeter as soluções.
É proibida a comunicação entre participantes de diferentes equipes e com pessoas de fora da competição.
Um problema é considerado resolvido se o programa submetido pela equipe resolve corretamente todos os casos da entrada dentro do tempo limite de execução.
O time que resolver o maior número de problemas durante a competição será o vencedor. O segundo critério de classificação é por tempo corrigido, ou seja, entre duas equipes empatadas em número de problemas ganha aquela com 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.
Local e horário:
Lab 407, 23/10/2019 às 18:00.
Linguagens aceitas:
C, C++, Java e Python.
Como se preparar:
Dicas para iniciantes (link para página da Maratona de Programação da SBC)
Existem diversas páginas com sistema de correção automática de problemas. O site URI Online Judge possui diversos problemas para pessoas de nível iniciante a avançado e fornece uma boa plataforma para pessoas que têm interesse de iniciar treinamentos para competições de programação.
Além de livros tradicionais de algoritmos também existem livros específicos para competições de programação que são muito úteis para alunos que querem aprender técnicas importantes para competições:
Programming Challenges, por Steven S. Skiena e Miguel A. Revilla.
Competitive Programming, por Steven Halim e Felix Halim. A primeira versão pode ser obtida gratuitamente.