Поддерживаемая сообществом коллекция алгоритмов на Python для обучения и изучения.
EndlessCheng/codeforces-go
Библиотека шаблонов на Go для алгоритмов и структур данных в спортивном программировании, с решениями задач Codeforces и LeetCode.
- Звёзды
- 8,785
- Форки
- 829
- Открытые issues
- 2
- Последний коммит
- 14 дней назад
Что это?
В репозитории собраны шаблоны на Go для спортивного программирования, сгруппированные по категориям и пригодные для повторного использования. Здесь есть структуры данных: деревья отрезков, деревья Фенвика, системы непересекающихся множеств, префиксные деревья, суффиксные автоматы и link-cut trees, а также алгоритмы для работы со строками, теории чисел, комбинаторики, FFT/NTT, вычислительной геометрии, динамического программирования и теории графов.
Помимо шаблонов, в репозитории есть подборки задач, сгруппированные по темам, и каталог с решениями задач Codeforces на Go. Все решения следуют единому шаблону: функция run принимает io.Reader и io.Writer, что упрощает написание тестов и стресс-тестирование в сравнении с реализацией перебором.
Проект рассчитан на тех, кто решает алгоритмические задачи на Go и хочет иметь под рукой справочник по распространённым шаблонам и подборкам задач для тренировки.
Ключевые возможности
- 01Шаблоны для деревьев отрезков, деревьев Фенвика, систем непересекающихся множеств, префиксных деревьев и других структур данных
- 02Алгоритмы для работы со строками, например KMP, суффиксные автоматы и AC-автомат
- 03Шаблоны по теории чисел, комбинаторике, FFT/NTT и вычислительной геометрии
- 04Шаблоны по динамическому программированию и теории графов, включая максимальный поток и LCA
- 05Решения задач Codeforces на Go с тестируемой структурой на основе функции run
Сценарии использования
- Решать задачи по спортивному программированию на Go
- Находить готовый шаблон для конкретной структуры данных или алгоритма
- Выбирать задачи по теме для тренировки на LeetCode или Codeforces
Быстрый старт
- 1
Просмотрите шаблоны алгоритмов в каталоге copypasta и скопируйте нужные
Что важно знать
- Это коллекция шаблонов кода и решений задач, а не запускаемое приложение или устанавливаемая библиотека.
Темы
Частые вопросы
- Что такое codeforces-go?
- Библиотека шаблонов на Go для алгоритмов и структур данных в спортивном программировании, с решениями задач Codeforces и LeetCode. В репозитории собраны шаблоны на Go для спортивного программирования, сгруппированные по категориям и пригодные для повторного использования. Здесь есть структуры данных: деревья отрезков, деревья Фенвика, системы непересекающихся множеств, префиксные деревья, суффиксные автоматы и link-cut trees, а также алгоритмы для работы со строками, теории чисел, комбинаторики, FFT/NTT, вычислительной геометрии, динамического программирования и теории графов.
- codeforces-go можно использовать бесплатно? Какая у него лицензия?
- codeforces-go распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- codeforces-go всё ещё поддерживается?
- Активно поддерживается. Последний коммит в codeforces-go — 8 окт. 2026 г..
- Для чего можно использовать codeforces-go?
- Решать задачи по спортивному программированию на Go Находить готовый шаблон для конкретной структуры данных или алгоритма Выбирать задачи по теме для тренировки на LeetCode или Codeforces
- Как установить codeforces-go?
- Просмотрите шаблоны алгоритмов в каталоге copypasta и скопируйте нужные
- Где скачать codeforces-go?
- Исходный код и инструкции по установке — на GitHub: https://github.com/EndlessCheng/codeforces-go
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Подборка классических алгоритмов и структур данных на JavaScript с пояснениями и ссылками на дополнительные материалы.
Офлайн-платформа для подготовки к экзаменам и соревнованиям по программированию, обучения WorldSkills и чтения классических текстов — в приложении или на сайте.
Подборка онлайн-курсов по робототехнике, университетских лекций, книг и практических материалов для самостоятельного обучения с тегами на двух языках.
Подборка кода на Python и учебник по алгоритмам робототехники: локализации, картографированию, SLAM, планированию траекторий и управлению.
Двуязычная коллекция из более чем 100 авторских схем, объясняющих LLM, RL, RLHF, DPO, GRPO и другие алгоритмы для больших моделей.