| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 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
В первом примере возможные оптимальные маршруты:
Во втором примере возможные оптимальные маршруты:
В третьем примере возможные оптимальные маршруты: