POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO?
Bárbara Quintela, Profa DSc DCC/ICE/UFJF
QUEM SOU?Programadora
Professora Cientista
AGENDA
➤ O que são Maratonas de Programação?
➤ SBC, ICPC, Google Jam, Game Jams, Hackathons…
➤ Quem está de olho nos participantes?
➤ Por que devo me interessar?
➤ Por onde começar?
“Algoritmo: sequência de passos para resolver um problema. Programação: Escrever um algoritmo em uma linguagem específica para ser executada por um computador. Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo.
O QUE SÃO MARATONAS DE PROGRAMAÇÃO?
MARATONAS DE PROGRAMAÇÃO - SBC
ETAPAS REGIONAIS (SET)
FINAL NACIONAL (NOV)Último mundial - ICPC 2018 - Beijing China
COMPETIÇÕES 2017/2018 (FOZ DO IGUAÇU/PEQUIM)
Próxima Final Nacional - SBC - será em Salvador-BA Próximo mundial - ICPC 2019 - Porto (Portugal)
FOCO EM ALUNOS UNIVERSITÁRIOS
➤ Precisa estar matriculado em um curso superior
➤ Times de 3 integrantes
➤ Precisa de um professor (coach)
➤ Fase Regional : português
➤ Fase Nacional e Mundial: inglês
➤ Desempate : Tempo total
➤ Solução errada : penalizada
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Problemas simples
➤ Testar o ambiente de prova
COMO É NA PRÁTICA?
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Exemplo de solução em várias linguagens de programação na folha
➤ Exemplo C++:
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Exemplo de solução em várias linguagens de programação na folha
➤ Exemplo Python:
COMO É NA PRÁTICA?
➤ Prova em si:
➤ Lista de problemas identificados por uma letra
➤ semelhante ao aquecimento
➤ Faz parte das escolhas do time:
➤ Quem digita cada problema?
➤ Que ordem começar?
SUBMETE SOLUÇÃO PARA O SISTEMA DA MARATONA - UM
JUIZ ONLINE VAI CONFERIR A SOLUÇÃO
Deve passar em todos os casos de testes
O JUIZ PODE ACEITAR OU
RECUSARFormatação, erros de lógica,
não atendeu algum caso etc…
BALÕES
➤ Cada problema tem uma cor de balão associada!
➤ Observar o nível de dificuldade do problema
TEMPO LIMITE
➤ Descrição do problema inclui tempo limite (1, 2 segundos)
➤ Faz diferença a escolha da linguagem
➤ Pode levar material impresso para consulta
COMO POSSO TREINAR?
➤ Livros:
➤ Programação competitiva
➤ Juizes online:
➤ uva.onlinejudge.org
➤ www.urionlinejudge.com
➤ www.spoj.com
OBIOlimpíada Brasileira de
Informática
OBI
➤ Foco em alunos de Ensino fundamental e medio
➤ Modalidade programação
➤ Modalidade Lógica
➤ Competição individual
➤ Tudo em português
CODE JAMGoogle
VÁRIAS ETAPAS
➤ Precisa passar em várias etapas para chegar ao mundial
➤ Em 2017, competidores de 125 países registraram
➤ Representantes de 15 países nas finais
➤ Competição individual
MAIS…
➤ Sobre Google Code Jam:
➤ https://code.google.com/codejam/
➤ Para treinar:
➤ Kickstart
➤ https://code.google.com/codejam/kickstart/
GAME JAMSNão necessariamente uma
competição
“Game Jam é uma reunião (presencial ou online) de desenvolvedores de jogos que tem como objetivo criar um jogo em um curto intervalo de tempo.
➤ Princípio de Pareto
➤ Regra 80/20
➤ O que tem a ver com jogos?
➤ 80% do desenvolvimento do jogo é concluído em 20% do tempo
➤ 80% da diversão do jogo vem de 20% dos elementos
COMO DESENVOLVER UM JOGO EM TAO POUCO TEMPO?
➤ Princípio de Pareto
➤ Regra 80/20
➤ O que tem a ver com jogos?
➤ 80% do desenvolvimento do jogo é concluído em 20% do tempo
➤ 80% da diversão do jogo vem de 20% dos elementos
➤ Foco nos 20%!
COMO DESENVOLVER UM JOGO EM TAO POUCO TEMPO?
SAIBA MAIS…
➤ https://producaodejogos.com/game-jams/
➤ https://globalgamejam.org
JÁ OUVIU FALAR EM HACKATHON?
Sim ou com certeza…
JÁ OUVIU FALAR EM HACKATHON?
Sim ou com certeza…
TOP INDUSTRIAS PARA HACKATHONS (2017)
HACKATHONS
OUTROS EVENTOS
➤ https://www.facebook.com/hackercup
➤ http://www.usaco.org/index.php?page=contests
➤ https://www.hackerrank.com