eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Билеты

Билеты

Беси собирается на экскурсию. Маршрут состоит из n пунктов пронумерованных 1..n. Имеется k билетов доступных для продажи. i-ый билет можно купить в пункте ci за цену pi и обеспечить себе доступ ко всем пунктам [ai, bi]. Прежде чем войти в любой пункт, Беси должна купить билет который обеспечивает доступ в этот пункт. Купив однажды билет в пункт, Беси может возвращаться в него в любой момент в будущем.

Для каждого i ∈ [1, n], выведите минимальную суммарную цену которую требуется заплатить, чтобы получить доступ к обоим пунктам 1 и n, если изначально Беси имела доступ только к пункту i. Если это невозможно, выведите −1.

Входные данные

Первая строка ввода содержит n (1n105) и k (1k105).

Каждая из последующих k строк содержит четыре целых числа ci (1cin), pi (1pi109), ai и bi (1aibin) для каждого i (1ik).

Выходные данные

Выведите n строк, по одной для каждого пункта.

Пример

Если Беси стартует из пункта i = 4, существует только один способ получить доступ ко всем пунктам от 1 до n и он таков:

  • Купить первый билет в пункте 4, что даст Беси доступ к точкам 2 и 3.
  • Купить третий билет в точку 2, что даёт Беси доступ к точке 7.
  • Вернуться в точку 4 и купить второй билет, что даст Беси доступ к точкам 5 и 6.
  • Купить четвёртый билет в точке 6, что даст Беси доступ в точку 1.
Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
7 6
4 1 2 3
4 10 5 6
2 100 7 7
6 1000 1 1
5 10000 1 4
6 100000 5 6
Выходные данные #1
-1
-1
-1
1111
10100
110100
-1
Источник 2021 USACO Декабрь, Платина