Добрый день всем!
Есть одно задача из informatics-а Объединение прямоугольников.
У мня получается найти все точки каждого прямоугольника но не знаю как дальше.
Пожалуйста помогите решить эту задачу.
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3803 |
2 | jiangly | 3707 |
3 | Benq | 3627 |
4 | ecnerwala | 3584 |
5 | orzdevinwang | 3573 |
6 | Geothermal | 3569 |
6 | cnnfls_csy | 3569 |
8 | Radewoosh | 3542 |
9 | jqdai0815 | 3532 |
10 | gyh20 | 3447 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | awoo | 162 |
2 | maomao90 | 160 |
3 | adamant | 157 |
4 | maroonrk | 154 |
5 | -is-this-fft- | 149 |
6 | SecondThread | 148 |
7 | Petr | 147 |
7 | atcoder_official | 147 |
9 | TheScrasse | 145 |
9 | nor | 145 |
Добрый день всем!
Есть одно задача из informatics-а Объединение прямоугольников.
У мня получается найти все точки каждого прямоугольника но не знаю как дальше.
Пожалуйста помогите решить эту задачу.
Название |
---|
Стандартная задача на ДО + сканлайн. Отсортим события открытия/закрытия прямоугольника по x, понятно, что между соседней парой событий ответ на одномерную задачу одинаковый. Теперь осталось научится решать одномерную задачу: построим ДО, при закрытии прямоугольника нужно вычесть 1 на отрезке, при открытии добавить 1, ответ это общая площадь 0 на все отрезке (чтоб это считать можно, например, поддерживать минимальный элемент и площадь его покрытия, тогда если он равен 0, то прибавим к ответу длину отрезка — площадь минимума, или весь отрезок в другом случае).
Хватить учить новичков всякой сложноте. Вот нормальное решение: http://ideone.com/d0bRIg
Это не сложнота а базовая задача но понимание ДО, суть задачи в том чтобы научится использовать ДО