Codeforces Global Round 16 |
---|
Закончено |
Дан неориентированный взвешенный граф, состоящий из $$$n$$$ вершин и $$$m$$$ рёбер.
На этом графе осуществляются запросы:
В самом начале и после каждого запроса вам необходимо найти четыре различные вершины $$$a$$$, $$$b$$$, $$$c$$$, $$$d$$$ такие, что существует путь между $$$a$$$ и $$$b$$$, существует путь между $$$c$$$ и $$$d$$$ и сумма длин двух кратчайших путей из $$$a$$$ в $$$b$$$ и из $$$c$$$ в $$$d$$$ минимальна. Ответ на запрос — это сумма длин этих двух кратчайших путей. Длина пути равна сумме весов рёбер на этом пути.
В первой строке находится два целых числа $$$n$$$ и $$$m$$$ $$$(4 \le n, m \le 10^5)$$$ — количество вершин и рёбер в графе соответственно.
Каждая из следующих $$$m$$$ строк содержит три целых числа $$$v$$$, $$$u$$$, $$$w$$$ ($$$1 \le v, u \le n, v \neq u$$$, $$$1 \le w \le 10^9$$$) — это означает, что существует ребро между вершинами $$$v$$$ и $$$u$$$ с весом $$$w$$$.
Следующая строка содержит одно целое число $$$q$$$ $$$(0 \le q \le 10^5)$$$ — количество запросов.
Следующие $$$q$$$ строк содержат запросы двух типов:
Гарантируется, что изначальный граф не содержит кратных рёбер.
В самом начале и после каждого запроса граф не обязательно связный.
Гарантируется, что в любой момент количество рёбер в графе не будет меньше $$$4$$$. Можно доказать, что в любой момент существуют четыре различные вершины $$$a$$$, $$$b$$$, $$$c$$$, $$$d$$$ такие, что существует путь между вершинами $$$a$$$ и $$$b$$$, и существует путь между вершинами $$$c$$$ и $$$d$$$.
Выведите $$$q + 1$$$ целое число — минимальную сумму длин кратчайших путей для выбранных пар вершин до всех запросов и после каждого из них.
6 6 1 3 6 4 3 1 1 4 1 2 6 4 2 4 2 5 4 3 4 1 2 5 2 0 1 4 0 3 4 1 6 1 3
4 3 3 7 5
До всех запросов можно выбрать вершины $$$(a, b) = (3, 2)$$$ и $$$(c, d) = (1, 4)$$$. Сумма длин двух кратчайших путей равна $$$3 + 1 = 4$$$.
После первого запроса можно выбрать вершины $$$(a, b) = (2, 5)$$$ и $$$(c, d) = (1, 4)$$$. Сумма длин двух кратчайших путей равна $$$2 + 1 = 3$$$.
После второго запроса можно выбрать вершины $$$(a, b) = (3, 4)$$$ и $$$(c, d) = (2, 5)$$$. Сумма длин двух кратчайших путей равна $$$1 + 2 = 3$$$.
После третьего запроса можно выбрать вершины $$$(a, b) = (2, 6)$$$ и $$$(c, d) = (4, 5)$$$. Сумма длин двух кратчайших путей равна $$$4 + 3 = 7$$$.
После последнего запроса можно выбрать вершины $$$(a, b) = (1, 6)$$$ и $$$(c, d) = (2, 5)$$$. Сумма длин двух кратчайших путей равна $$$3 + 2 = 5$$$.
Название |
---|