Coleção de algoritmos mantida pela comunidade e implementada em Python, voltada ao aprendizado e à educação.
EndlessCheng/codeforces-go
Biblioteca de templates em Go para algoritmos e estruturas de dados de programação competitiva, com soluções para problemas do Codeforces e LeetCode.
- Estrelas
- 8,785
- Forks
- 829
- Issues abertas
- 2
- Último commit
- há 14 dias
O que é?
Este repositório reúne templates reutilizáveis em Go para programação competitiva, organizados por categoria. Abrange estruturas de dados como árvores de segmentos, árvores Fenwick, union-find, tries, autômatos de sufixos e árvores link-cut, além de algoritmos para strings, teoria dos números, combinatória, FFT/NTT, geometria computacional, programação dinâmica e teoria dos grafos.
Além dos templates, o repositório inclui uma pasta de listas de problemas organizadas por tópico e soluções em Go para problemas do Codeforces, armazenadas em um diretório principal. Cada solução segue um padrão compartilhado: uma função run que recebe io.Reader e io.Writer, facilitando a criação de testes e a comparação de desempenho com uma implementação de força bruta.
O projeto é voltado a quem pratica problemas de algoritmos em Go e quer consultar templates comuns e as listas de problemas usadas para treinar.
Recursos principais
- 01Templates para árvores de segmentos, árvores Fenwick, union-find, tries e outras estruturas de dados
- 02Cobertura de algoritmos para strings, como KMP, autômatos de sufixos e autômato AC
- 03Templates de teoria dos números, combinatória, FFT/NTT e geometria computacional
- 04Templates de programação dinâmica e teoria dos grafos, incluindo fluxo máximo e LCA
- 05Soluções em Go para problemas do Codeforces com uma estrutura baseada em função run que permite testes
Casos de uso
- Praticar problemas de programação competitiva em Go
- Consultar um template pronto para uma estrutura de dados ou algoritmo específico
- Seguir uma lista de problemas organizada por tópico para treinar no LeetCode ou no Codeforces
Início rápido
- 1
Explore os templates de algoritmos no diretório copypasta e copie os que precisar
Antes de usar
- Esta é uma coleção de templates de código e soluções de problemas, não um aplicativo executável nem uma biblioteca instalável.
Tópicos
Perguntas frequentes
- O que é codeforces-go?
- Biblioteca de templates em Go para algoritmos e estruturas de dados de programação competitiva, com soluções para problemas do Codeforces e LeetCode. Este repositório reúne templates reutilizáveis em Go para programação competitiva, organizados por categoria. Abrange estruturas de dados como árvores de segmentos, árvores Fenwick, union-find, tries, autômatos de sufixos e árvores link-cut, além de algoritmos para strings, teoria dos números, combinatória, FFT/NTT, geometria computacional, programação dinâmica e teoria dos grafos.
- codeforces-go é gratuito? Qual é a licença?
- codeforces-go é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- codeforces-go ainda é mantido?
- Manutenção ativa. O último commit de codeforces-go foi em 8 de out. de 2026.
- Para que posso usar codeforces-go?
- Praticar problemas de programação competitiva em Go Consultar um template pronto para uma estrutura de dados ou algoritmo específico Seguir uma lista de problemas organizada por tópico para treinar no LeetCode ou no Codeforces
- Como instalar codeforces-go?
- Explore os templates de algoritmos no diretório copypasta e copie os que precisar
- Onde consigo codeforces-go?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/EndlessCheng/codeforces-go
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Coleção em JavaScript de algoritmos clássicos e estruturas de dados, cada um com explicações e links para leituras complementares.
Plataforma de estudos bilíngue e offline-first que reúne preparação para exames, arquivos de programação competitiva, treinamento WorldSkills e textos clássicos em um app ou site.
Lista selecionada de cursos online de robótica, aulas universitárias, livros e recursos práticos, com tags bilíngues, para quem estuda por conta própria.
Coleção de código Python e livro didático sobre algoritmos de robótica, abrangendo localização, mapeamento, SLAM, planejamento de trajetórias e controle.
Coleção bilíngue com mais de 100 diagramas originais que explicam LLM, RL, RLHF, DPO, GRPO e algoritmos relacionados a modelos de grande porte.