MIUP'2015

Informações

Índice

Enquadramento

A prestigiada instituição americana "Association for Computing Machinery" (ACM) promove anualmente a realização do "The ACM International Collegiate Programming Contest" (ACM-ICPC), um concurso mundial de programação envolvendo equipas de alunos universitários. Este tipo de evento teve início em 1970 como um concurso local, no estado do Texas e, entretanto, cresceu de forma quase exponencial, quer no número de universidades participantes, quer no número de países envolvidos. Na edição de 2014/2015 estiveram envolvidos cerca 38.000 alunos, de mais de 2.500 universidades de 101 países espalhados por todos os continente.

Desenrola-se basicamente em 3 etapas:

  • Fases Locais: São os concursos que seleccionam as equipas que representam cada universidade nos concursos regionais. No nosso caso a MIUP tem servido esse propósito, mas não é obrigatório que uma universidade use a MIUP para seleccionar as suas equipas.
  • Fases regionais: São concursos que agregam países/estados de uma mesma região geográfica do mundo e qualificam equipas para a final mundial. O número de equipas que se qualificam para a final depende da regional em questão (e em geral da sua prestação em finais passadas). A nossa regional é o SWERC e o SWERC'2015 será realizado no Porto (DCC/FCUP), a 21 e 22 de Novembro. As regionais de 2015 qualificam para a final de 2016.
  • Final Mundial: A final mundial agrega sensivelmente as 125 melhores equipas (qualificadas via regionais). A final de 2016 realiza-se em Phuket, na Tailândia.

[Voltar ao Topo]

Porquê um concurso de programação nacional?

A organização em Portugal de um evento análogo à SWERC tem como principal objectivo alertar, cativar, motivar e preparar equipas de instituições universitárias portuguesas para uma participação meritória a nível internacional.

Este tipo de concursos proporcionam aos alunos uma oportunidade de demonstrarem, e melhorarem, os seus conhecimentos e capacidades de resolução de problemas e de informática. Além do convívio que uma competição como esta proporciona, o concurso constitui também uma excelente oportunidade para estabelecer novos contactos.

Para além disso a MIUP "vale por si só" e uma participação positiva na MIUP é algo que podem e devem referenciar, por exemplo, no vosso curriculum.

[Voltar ao Topo]

No que consiste um concurso de programação?

Os concursos estilo ACM-ICPC são para equipas de 3 elementos com direito a usar um único computador durante a prova. As linguagens permitidas são C, C++ e Java. Uma prova típica dura 5h para 8 a 10 problemas.

O objectivo é resolver o maior número de problemas no menor tempo possível. Destreza na resolução de problemas, bons conhecimentos de algoritmos, rapidez de programação e bom espirito de equipa são factores importantes.

[Voltar ao Topo]

Qual o tipo de problemas que são colocados?

Os problemas são descrições de tarefas que podem ser automatizadas. Geralmente cobrem um vasto leque de áreas de aplicação, centrando-se a sua descrição nos requisitos de utilizador. Não será de esperar que a resolução de um problema se reduza à escrita de um algoritmo de ordenação, mas é razoável que envolva uma fase de ordenação, por exemplo para apresentação dos resultados ordenados. Muitos dos problemas procuram simular o tipo de problemas que poderão ocorrer em situações reais numa empresa. Os problemas variam em grau de dificuldade, desde os simples aos que podem constituir um autêntico desafio.

[Voltar ao Topo]

Que tipo de conhecimentos é suposto ter-se para poder competir?

Assume-se que os alunos têm conhecimentos de inglês, matemática básica e de informática com especial ênfase em algoritmos e estruturas de dados. Os problemas não requerem conhecimentos prévios muito avançados de uma área específica de aplicação. A descrição do problema será auto-suficiente, incluindo qualquer conhecimento específico de uma dada área que seja necessário à compreensão do problema.

[Voltar ao Topo]

Como preparar a participação numa MIUP?

Nisto, como noutras coisas da vida, não há nada como praticar. É claro que também devem tentar ter uma boa base teórica, mas o ideal é verem enunciados de problemas que tenham saido em concursos ACM, tentando resolvê-los. Podem inclusive aproveitar a avaliação automática que alguns sites proporcionam. Espreitem a secção respectiva (Arquivos de Problemas) nas nossas ligações. Podem também espreitar edições passadas de MIUPs.

[Voltar ao Topo]

Organização

A organização da MIUP envolve duas comissões, uma comissão de organização local e outra de carácter científico.

A comissão científica tem como função elaborar o conjunto de problemas para o concurso e acompanhar o processo de avaliação durante a prova. Esta comissão é composta por docentes representantes de um alargad número de instituições universitárias. A avaliação dos problemas submetidos pelas equipas no decorrer da prova será feita pelo Mooshak, um avaliador automático desenvolvido no DCC-FCUP. Caberá ao júri da prova, composto por membros da comissão científica, confirmar os resultados do avaliador automático, responder a dúvidas apresentadas pelas equipas e decidir sobre eventuais problemas que surjam no decorrer da prova.

Podem consultar os membros de cada comissão na página respectiva.

[Voltar ao Topo]