SCC0210 - Laboratório de Algoritmos Avançados
Professora: Leo Sampaio Ferraz Ribeiro
Metodologia
Material de Apoio: O cronograma, materiais e informações adicionais serão disponibilizados no eDisciplinas.
Comunicação: A interação entre os alunos e a professora ocorrerá via Discord. Segue link de acesso: https://discord.gg/24wd6sMSKW
Linguagem de Programação: C++, Python 3, Java e Haskell.
Entrega de Exercícios: A submissão dos exercícios será feita via run.codes, com código de matrícula 7DU9
Objetivo
O curso tem como objetivo exercitar programação competitiva em ambiente simulado, fornecendo aos alunos habilidades para a resolução eficiente de problemas algorítmicos.
Conteúdo Programático
- Força Bruta e Backtracking
- Programação Dinâmica
- Divisão e Conquista
- Algoritmos Gulosos
- Grafos
- Teoria dos Números
- Manipulação de Strings
Avaliação
A nota final será calculada com base nos exercícios realizados ao longo do curso:
- Exercícios por aula: Em geral serão dois exercícios ou mais por encontro.
- Entrega: Idealmente os exercícios devem ser entregues ao final da aula, com um prazo final de 10 dias (domingo seguinte).
- Média Final: Calculada a partir da média dos exercícios realizados, excluindo a nota mais baixa.
Mini Maratonas
- São desafios que envolvem exercícios variados.
- Os alunos poderão formar grupos de até 3 pessoas.
- Os exercícios das mini maratonas compõem a nota como exercícios regulares.
- Os três primeiros grupos que finalizarem os desafios receberão premiação.
- Dias 25/04 e 13/06
Bibliografia
Os livros recomendados para acompanhamento da disciplina estão disponíveis na biblioteca e possuem versões digitais em outras fontes:
- HALIM, S.; HALIM, F. Competitive Programming 3.
- KLEINBERG, J.; TARDOS, E. Algorithm Design.