Сортировки, жадность (16 сентября 2016)
- [10 минут] Применяем сортировку на C++, Java, переопределяем компаратор
- C++: [code] [code] [code] [code]
- java: =(
- [40 минут] Про отрезки на прямой и события
- Максимальное число непересекающихся отрезков
- Найти длину объединения отрезков
- Найти точку, покрытую максимальным числом отрезков
- Найти количество пар пересекающихся отрезков
- [skipped] Для каждого отрезка найти количество пересекающихся с ним
- Даны n отрезков на прямой. Для каждого k от 0 до n посчитать длину части прямой, покрытой ровно k отрезками.
- [40 минут] Задачи на сортировку, жадности, придумывание компаратора
- Есть n работ. У каждой работы есть время выполнения ti. К моменту T выполнить максимальное число работ.
- Есть n работ. У каждой есть дедлайн di и время выполнения ti. Можно ли успеть выполнить все работы?
- Даны n гномов. Если i-го гнома укладывать спать ai минут, он потом спит bi минут. Можно ли сделать так, чтобы все гномы уснули? (принцип доказательства: выбор максимума)
- Есть n спортсменов. i-й спортсмен имеет вес mi и может держать на своих плечах суммарную массу si. Можно ли построить башню из всех спортсменов?
- Есть работы. У каждой работы есть ti − время выполнения и fi − штраф. Нужно минимизировать ∑ Tifi, где Ti − момент выполнения работы.
- Автоматическое придумываение компаратора: попытаться сделать swap
- Максимальное скалярное произведение (даны два вектора, координаты одного из них можно переставлять)
- Задача о двух станках (без доказательства, просто применяем метод)
- [skipped] Есть n работ. У каждой есть дедлайн di и время выполнения ti. Успеть выполнить максимальное число работ.