Страница используется для конспектирования лекций по алгоритмам и структурам данных. По любым вопросам можно писать мне (Романычев Леонид Романович) в тг/вк: @romanychev
Книги:
- “Алгоритмы: построение и анализ”
- “Искусство программирования”
Электронные ресурсы:
Соревновательные платформы
Платформы для подготовки к собеседованиям
Видеокурсы
Новость для тех, кто хочет освоить алгоритмы на продвинутом уровне — мы выложили в открытый доступ обновленный курс ШАДа:
16 свежих лекций подробно рассказывают о различных аспектах алгоритмов — как теоретических (модели вычислений, иммутабельность и персистентность, хеширование и пр.), так и практических (задача о кратчайших путях, RMC, LCA и др.).
Видео будут полезны тем, кто уже знаком с алгоритмами и хочет глубже разобраться в сложных вопросах. А ещё курс пригодится, если вы хотите понять, как использовать алгоритмы в анализе данных — на это сделан особый фокус в обновлённом плейлисте.
Конспекты
- Вступить в группу и порешать задачи. Чтобы добавиться в группу - напишите свои никнеймы на кодфорсесе в таблице выше (вкладка “студенты”). Шаблон для программ выложил внизу этой страницы.
- Решить задачу ниже максимально быстро (ну или как-нибудь)
Задача под *:
- Дано дерево. Надо вывести количество вершин на каждом уровне. Начинаем с корня. Корень находится на уровне 0.
- Дан массив целых чисел и число Х. Надо найти количество подотрезков, сумма чисел на которых равна Х.
- Дана строка s1 и s2. Над любой из строк можно совершить только 1 операцию следующих типов: удалить любой элемент, добавить любой элемент, изменить любой элемент.
- Даны точки на плоскости. Нужно проверить имеют ли эти точки вертикальную ось симметрии.
- Развернуть односвязный список.
- На вход подается день недели, который приходится на 1 января. Нужно вывести количество пятниц 13 за весь год.
- Даны две строки s1 и s2. Вернуть true, если s2 содержит перестановку s1, иначе вернуть false.
Ханойские башни
Крутой препод из ВШО рассматривает всякие приколы с графами через алгебру
Набор крутых статей от пользователей на платформе codeforces
#include <iostream>
#include <set>
#include <vector>
#include <map>
#include <math.h>
#include <queue>
#include <iomanip>
#include <algorithm>
#include <cstring>
//#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<ll, ll> pa;
ll INF = 1e17;
void pprint(auto& a){
for(ll i = 0; i<a.size(); i++){
cout << a[i] << ' ';
} cout << "\n";
}
ll MOD = 1e9+7;
int main(){
ios_base::sync_with_stdio(0);
cin.tie(NULL);
cout.tie(NULL);
ll n;
cin >> n;
return 0;
}