por que participar de maratonas de programaÇÃo? · 2018-09-28 · maratona de programação:...
TRANSCRIPT
![Page 1: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/1.jpg)
POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO?
Bárbara Quintela, Profa DSc DCC/ICE/UFJF
![Page 2: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/2.jpg)
QUEM SOU?Programadora
Professora Cientista
![Page 3: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/3.jpg)
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?
![Page 4: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/4.jpg)
“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?
![Page 5: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/5.jpg)
MARATONAS DE PROGRAMAÇÃO - SBC
ETAPAS REGIONAIS (SET)
FINAL NACIONAL (NOV)Último mundial - ICPC 2018 - Beijing China
![Page 6: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/6.jpg)
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)
![Page 7: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/7.jpg)
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
![Page 8: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/8.jpg)
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Problemas simples
➤ Testar o ambiente de prova
![Page 9: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/9.jpg)
COMO É NA PRÁTICA?
![Page 10: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/10.jpg)
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Exemplo de solução em várias linguagens de programação na folha
➤ Exemplo C++:
![Page 11: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/11.jpg)
COMO É NA PRÁTICA?
➤ Aquecimento
➤ Exemplo de solução em várias linguagens de programação na folha
➤ Exemplo Python:
![Page 12: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/12.jpg)
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?
![Page 13: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/13.jpg)
SUBMETE SOLUÇÃO PARA O SISTEMA DA MARATONA - UM
JUIZ ONLINE VAI CONFERIR A SOLUÇÃO
Deve passar em todos os casos de testes
![Page 14: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/14.jpg)
O JUIZ PODE ACEITAR OU
RECUSARFormatação, erros de lógica,
não atendeu algum caso etc…
![Page 15: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/15.jpg)
BALÕES
➤ Cada problema tem uma cor de balão associada!
➤ Observar o nível de dificuldade do problema
![Page 16: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/16.jpg)
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
![Page 17: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/17.jpg)
COMO POSSO TREINAR?
➤ Livros:
➤ Programação competitiva
➤ Juizes online:
➤ uva.onlinejudge.org
➤ www.urionlinejudge.com
➤ www.spoj.com
![Page 18: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/18.jpg)
OBIOlimpíada Brasileira de
Informática
![Page 19: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/19.jpg)
OBI
➤ Foco em alunos de Ensino fundamental e medio
➤ Modalidade programação
➤ Modalidade Lógica
➤ Competição individual
➤ Tudo em português
![Page 20: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/20.jpg)
CODE JAMGoogle
![Page 21: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/21.jpg)
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
![Page 22: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/22.jpg)
MAIS…
➤ Sobre Google Code Jam:
➤ https://code.google.com/codejam/
➤ Para treinar:
➤ Kickstart
➤ https://code.google.com/codejam/kickstart/
![Page 23: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/23.jpg)
GAME JAMSNão necessariamente uma
competição
![Page 24: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/24.jpg)
“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.
![Page 25: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/25.jpg)
➤ 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?
![Page 26: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/26.jpg)
➤ 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?
![Page 27: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/27.jpg)
SAIBA MAIS…
➤ https://producaodejogos.com/game-jams/
➤ https://globalgamejam.org
![Page 28: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/28.jpg)
JÁ OUVIU FALAR EM HACKATHON?
Sim ou com certeza…
![Page 29: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/29.jpg)
JÁ OUVIU FALAR EM HACKATHON?
Sim ou com certeza…
![Page 30: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/30.jpg)
TOP INDUSTRIAS PARA HACKATHONS (2017)
![Page 31: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/31.jpg)
HACKATHONS
![Page 32: POR QUE PARTICIPAR DE MARATONAS DE PROGRAMAÇÃO? · 2018-09-28 · Maratona de Programação: Competição para ver quem resolve maior número de problemas em menor tempo. O QUE](https://reader036.vdocuments.site/reader036/viewer/2022081611/5f0267887e708231d4041c9c/html5/thumbnails/32.jpg)
OUTROS EVENTOS
➤ https://www.facebook.com/hackercup
➤ http://www.usaco.org/index.php?page=contests
➤ https://www.hackerrank.com