Про простые числа и делители.
- Решето Эратосфена.
- Алгоритм.
- Почему работает за O(NloglogN)
- Как можно посчитать списки делителей для всех чисел от 1 до N за O(NlogN).
- Разложение за O(sqrt(N))
- Сколько делителей у числа за O(sqrt(N))
- Для каждого числа получить список его делителей.
- Для каждого числа получить список его простых делителей.
- Сколько нулей на конце N? За O(logN).
- Д.З. Посчитать сумму - сколько делителей у чисел от 1 до N. За O(sqrt(N)).
- Not read Посчитать сумму - сколько простых делителей у чисел от 1 до N. За O(sqrt(N)).
- Д.З. Посчитать сумму по всем K = 1..N - сколько нулей на конце K! (за O(sqrt(N)), можно быстрее).
Обзор того, что бывает в мире.
- Разложение за O(N1/4)
- Проверка на простоту за O(logN)
- Посчитать число простых от 1 до N за O(N2/3)
Про уравнения и цикл FOR.
- AX + BY = C
- Д.З. AX + BY = C, A и B - простые, [A,B > 0] (задача G с контеста)
- Д.З. Сколько существует троек чисел A, B, C <= N : 3A + 5B = C
- Сделать холодильник размера N с целыми сторонами и минимальной площадью поверхности.
- Решение за O(N3)
- Решение за O(N1/2*N1/3)
- Решение за O(D(N)*N1/3)
[L,R]
- Сколько чисел на отрезке [L,R] не кратны P ?
- Сколько чисел на отрезке [L,R] состоят только из 0 и 1 в десятичной записи. L, R <= 1018.
- Сколько чисел на отрезке [L,R] состоят из цифр из множества D в десятичной записи. L, R <= 1018.
- Д.З. Число чисел от L до R, состоящих только из цифр из множества D и кратных M, M <= 100, 1 <= L, R <= 1018
Вычисления.
- Вычисления по модулю. Сложение, умножение.
- Быстрая степень за O(log).
- Умножение чисел порядка 1018 по модулю.
- Обратное. Алгоритм Евклида. O(logM).
- Обратное по теореме Ферма. O(logM) + Время чтобы найти Phi(M).
- Д.З. Обратные для всех за O(N).