Ввведение.
- Задача про сапера. Метод Гаусса? Нет, целочисленное линейное программирование.
Гаусс
- Метод Гаусса для поля за O(N3). Поле = R, C, Z/pZ. timus : 1042.
- Метод Гаусса по произвольному модулю M.
- Подсчет определителя. Алгоритм Евклида.
- Поиск решений. Лемма Гензеля и К.Т.О. 100922_A0 : arcade
- Вещественный метод Гаусса. Большая погрешность. Матрица Гильберта. 100922_A0 : game
- Проверка уравенения det A = 0 <=> проверка по большому простому модулю. Линейно независимые вектора.
- Not read Добавление вектора в набор за O(N2).
- Not read Линейно независимые вектора = матроид. Решение задачи timus : 1041.
Про простые числа
- Поиск обратного.
- Методом ap-2, aPhi(m)-1
- Методом x*a + y*m = 1, для любых (a,m) = 1.
- Преимущество последнего при больших a, m. Преимущество при непростых m.
- Поиск первообразной
- За O(N). Перебираем все, проверям за линию.
- За O(logN). Перебираем все, проверяем за O(числа различных простых делителей).
- Дискретное логарифмирование: решение ax = b (m)
- За O(N)
- За O(sqrt(N)*logN)
Meet-In-The-Middle
- Задачи про рюкзак.
- Решение задачи о разбиении на 2 кучки за O(n*2n/2)
- Та же задача, но посчитать число способов. 100922_A0 : knapsack
- Та же задача, но теперь можно некоторые предметы не брать. O(n*3n/2).
- Задачи про графы.
- Найти max подклику.
- Найти количество подклик (разобрано потом).
- Not read Выделить подграф с max E / V.
Задача о рюкзаке.
- Задача = набрать ровно W.
- Time = O(W*N), Memory = O(W), Восстановление ответа.
- Новая задача = набрать небольше W, но максимизировать ценность. Как восстанавливать ответ?
- Not read Методы оптимизации динамики Time=O(N2), Memory=O(N2) по памяти
- Not read Храним только последнюю строку, Memory=O(N), но не можем восстановить ответ.
- Not read Корневая эвристика. Memory=O(N3/2), можем восстановить ответ.
- Not read Двоичное дерево. Time=O(N2logN), Memory=O(N).
- Not read Новая задача = Каждой вещи у нас Ki штук.
- Not read Решение за O(WNlogW) с деревом отрезков.
- Not read Решение за O(WNlogK) дроблением каждого K на logK отдельных вещей.
Практика
- Контест 100922a0 (условия)