electicode
ГлавнаяКурсыРесурсыЗадачиНациональная олимпиадаСоревнованияТаблица лидеров
...
Главная/Resources

Resources

A collection of resources that can help you through your competitive programming journey and achieve your goals.

Combinatorics

Изучите Combinatorics

Basics

Изучите Basics

Звёзды и полосы

Узнайте о методе «звёзды и полосы»

Числа Каталана

Изучите числа каталана

Data Structures

Изучите Data Structures

Система непересекающихся множеств (DSU)

Узнайте о системе непересекающихся множеств (DSU)

Dynamic Programming

Изучите Dynamic Programming

Введение в Динамическое программирование

Изучите базовые концепции динамического программирования

Graphs

Изучите Graphs

Базовые определения теории графов

Изучите основные определения теории графов

Math

Изучите Math

Евклидов (НОД)

Узнайте о Евклидовом алгоритме (НОД)

Misc

Изучите Misc

Линейный поиск

Узнайте о линейном поиске

Strings

Изучите Strings

Хеширование

Узнайте о хешировании

Game Theory

Изучите Game Theory

Основы состояний игры

Изучите основы игровых состояний

Связный список

Узнайте о связанном списке

Bitset

Узнайте о Bitset

Дерево Фенвика

Изучите Дерево Фенвика

Декартово дерево

Узнайте о Treap

Оптимизация битового набора

Узнайте об оптимизации битовых наборов

Наибольшая общая подпоследовательность (LCS) и наибольшая возрастающая подпоследовательность (LIS)

Узнайте о LCS/LIC

Поиск в глубину (DFS)

Изучите поиск в глубину (DFS)

Поиск в ширину (BFS)

Изучите поиск в ширину (BFS)

Алгоритм Флойда — Уоршелла

Изучите алгоритм Флойда—Уоршелла

Алгоритм Дейкстры

Изучите алгоритм Дейкстры

0-1 BFS

Изучите 0-1 BFS

Теорема Эрдёша—Галлаи

Узнайте о теореме Эрдёша — Галлаи

2-SAT

Изучите 2-SAT

Heavy-Light декомпозиция

Изучите Heavy-Light декомпозицию

Виртуальное дерево

Узнайте о виртуальном дереве

Простые числа и факторизация

Изучите простые числа и способы разложения

Решето Эратосфена

Изучите решете Эратосфена

Бинарный поиск

Узнайте о двоичном поиске

Двоичные числа

Что такое двоичные числа и что они означают?

Побитовые операции

Изучите Побитовые операции

Prefix Sum

Изучите Prefix Sum

Разностный массив

Как построить массив разностей

Введение в рекурсию

Изучите основные понятия рекурсии.

Рекурсия с мемоизацией

Узнайте о рекурсии с мемоизацией

Базовые алгоритмы сортировки

Узнайте об основных алгоритмах сортировки

Два указателя

Узнайте о двух указателях

Техника скользящего окна

Узнайте о Sliding WindowaУзнайте о технике скользящего окна

Длинная арифметика

Изучите длинную арифметику

Тернарный поиск

Изучите тернарный поиск

Разделяй и властвуй

Изучите метод «Разделяй и властвуй»

Оптимизация ДП методом «Разделяй и властвуй»

Узнайте о оптимизации «Разделяй и властвуй» для динамического программирования

Параллельный двоичный поиск

Узнайте о параллельном двоичном поиске

Алгоритм SMAWK

Узнайте об алгоритме SMAWK

Z-функция

Узнайте о Z-функции

Префикс-функция Алгоритм Кнута–Морриса–Пратта

Узнайте о префикс-функции алгоритма Кнута—Морриса—Пратта

Бор

Изучите бор