| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 3 초 | 1024 MB | 91 | 18 | 16 | 26.230% |
Ян и Татьяна решили стать блогерами-путешественниками и публиковать ролики о поездках по городам своей страны.
В стране есть $n$ городов, пронумерованных от $1$ до $n$. Город $1$ --- столица их страны. Города соединены $m$ двусторонними дорогами, пронумерованными от $1$ до $m$, каждая из которых соединяет два различных города. При этом одну и ту же пару городов могут соединять несколько различных дорог. Из любого города по дорогам можно доехать до любого другого города страны.
Путешественники планируют отправиться из столицы в какой-то другой город, но пока не выбрали в какой. Маршрут путешествия в город $k$ будет состоять из городов $s_1, s_2, \ldots, s_q$ и дорог $r_1, r_2, \ldots, r_{q - 1}$, таких что:
Для каждой дороги Ян и Татьяна посчитали длительность ролика, который получится при съемке путешествия по этой дороге, длительность ролика для дороги с номером $i$ равна $t_i$.
В процессе путешествия каждый из ребят выберет одну из дорог маршрута и снимет ролик, посвящённый этой дороге. При этом Ян любит снимать короткие ролики, поэтому выберет на маршруте дорогу с наименьшим значением $t_i$, а Татьяна предпочитает длинные ролики, поэтому выберет дорогу с наибольшим значением $t_i$.
Суммарная длина двух роликов будет равна $\min\limits_{1 \leq i \leq q - 1} t_{r_i} + \max\limits_{1 \leq i \leq q - 1} t_{r_i}$.
Ребята планируют выложить ролики на известную платформу, где большей популярностью пользуются короткие ролики, поэтому они хотят минимизировать суммарную длину двух роликов. Чтобы выбрать конечный город и маршрут для путешествия, блогеры хотят для каждого конечного города $k$ подсчитать минимальную по всем возможным маршрутам из города $1$ в город $k$ суммарную длину двух роликов.
В первой строке даны два целых числа $n$, $m$ ($2 \leq n \leq 300\,000$, $1 \leq m \leq 300\,000$) --- количество городов и дорог.
Следующие $m$ строк содержат описания дорог. В $i$-й из этих строк находятся три целых числа $u_i$, $v_i$, $t_i$ ($1 \leq u_i, v_i \leq n$, $u_i \neq v_i$, $0 \leq t_i \leq 10^9$) --- номера городов, соединённых дорогой, и длительность ролика про эту дорогу.
Гарантируется, что по имеющимся дорогам можно проехать из любого города в любой другой, возможно, через другие города.
Для каждого $2 \leq k \leq n$ выведите минимальную суммарную длину роликов Яна и Татьяны для путешествия, заканчивающегося в городе $k$.
| 번호 | 배점 | 제한 |
|---|---|---|
| 1 | 9 | $n \leq 300\,000$, $m \leq 300\,000$, $m = n - 1$ |
| 2 | 17 | $n \leq 300\,000$, $m \leq 300\,000$, $t_i = 0$ для всех дорог $i$ из города $1$ |
| 3 | 12 | $n \leq 300\,000$, $m \leq 300\,000$, $t_i = 10^9$ для всех дорог $i$ из города $1$ |
| 4 | 9 | $n \leq 10$, $m \leq 10$, каждая пара городов соединена не более чем одной дорогой |
| 5 | 6 | $n \leq 20$, $m \leq 20$, каждая пара городов соединена не более чем одной дорогой |
| 6 | 6 | $n \leq 2000$, $m \leq 2000$, $|u_i - v_i| = 1$ для всех дорог |
| 7 | 9 | $n \leq 2000$, $m \leq 2000$ |
| 8 | 8 | $n \leq 5000$, $m \leq 300\,000$ |
| 9 | 10 | $n \leq 300\,000$, $m \leq 300\,000$, для всех $a$ существует дорога между парой городов $a$ и $a+1$; для любой пары дорог $i$ и $j$, для которых $|u_i - v_i| = 1$ и $|u_j - v_j| > 1$ выполнено $t_i \le t_j$ |
| 10 | 14 | $n \leq 300\,000$, $m \leq 300\,000$ |
3 3 1 2 2 1 3 1 2 3 1
2 2
7 10 1 2 2 1 2 8 2 3 3 3 4 5 3 5 4 4 5 4 6 5 7 6 4 4 1 7 6 6 7 9
4 5 6 6 6 10
4 4 1 2 2 3 2 0 2 4 3 4 3 1
3 2 2
В первом примере возможные оптимальные маршруты:
Во втором примере возможные оптимальные маршруты:
В третьем примере возможные оптимальные маршруты: