Section outline

    • 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.