O que é Programação Competitiva?

2841
Artigo enviado por Hernani Neto. Quer partilhar conhecimento com os demais seguidores do MenosFios? Siga os passos.

 

Hoje, é raro encontrar alguém que nunca tenha tido contacto com algum computador ou smartphone, esses dispositivos oferecem uma série de funcionalidades para os seus usuários e facilitam de forma significativa muitas tarefas. Todas essas funcionalidade são baseadas em software. O processo pelo qual essas funcionalidades são desenvolvidas envolve a criação de software, ou seja, programação – processo de escrita de software. Isso não é novo para a realidade angolana, temos várias instituições voltadas para formação de quadros na área de programação. Contudo, a presença da Programação Completiva é relativamente nova e pouco notada por essas bandas.

Então… O que é Programação Competitiva?

De forma simples, programação competitiva é programar em um ambiente de competição. É um mind sport, realizado via internet ou rede local e envolve participantes, normalmente estudantes da área, que tentam resolver uma série de problema de acordo com alguma especificações, fazendo o uso da programação.

Uma competição de programação geralmente envolve a apresentação de um conjunto de problemas de lógica ou matemática aos competidores, e lhe é requerido que escrevam programas de computadores capazes de resolver cada problema. Vence o que mais problemas resolver e existem critérios de desempate como a velocidade de resolução e outros.

Um dos concursos mais conhecidos é o ACM-ICPC que originou-se nos anos 70 e cresceu incluindo mais de 88 países na edição de 2011. O interesse por programação competitiva cresceu extensivamente desde 2000, e atualmente é uma realidade viva nas grandes universidades a volta do mundo, em África países como África do Sul e Egito participam há quase 20 anos no ACM-ICPC. A programação competitiva desperta nos seus participantes muitas habilidades referentes a escrita de software, empresas como Google, Facebook, Amazon recrutam com frequência os melhores competidores de concursos de programação como o ACM-ICPC, pois reconhecem o potencial de um programador competitivo.

Os concursos conceituados a nível de programação competitiva normalmente contemplam estudantes universitários (ex. ACM-ICPC), do ensino médio (ex. IOI). Contudo existem também concursos abertos, onde qualquer um pode participar, como o Facebook Hacker Cup e TopCoder.

É extremamente proveitoso, durante o período de formação superior e média, participar em concursos e adquirir conhecimento de programação por meio de competições. Em Angola, desde o ano de 2016 tem se introduzido a cultura de programação competitiva, em 2016 alguns estudantes universitários participaram da fase regional sul africana do concurso ACM-ICPC, competindo com estudantes de várias instituições a nível de África. No ano presente, pela segunda vez, houve a participação de Angola. Felizmente também tem crescido o interesse em programação competitiva a nível do ensino médio onde o ITEL, tem sido os precursor da entrada do IOI (Olimpíada Internacional de Informática) em Angola.

O ideal é que as nossas instituições quer a nível superior, como médio se interessem e envolvam os seus estudantes neste fantástico mundo da programação competitiva, visto que se tem a ganhar.