Задача №114680. Нетреугольники

Рассмотрим неориентированный граф \(G\), каждой вершине которого сопоставлен положительный целый вес. Назовём нетреугольником в графе \(G\) тройку различных вершин \(u\), \(v\) и \(w\) такую, что хотя бы одно из рёбер \((u, v)\), \((v, w)\) или \((u, w)\) отсутствует в графе. Стоимостью нетреугольника назовём сумму весов вершин в нём. Стоимостью графа назовём максимальную стоимость нетреугольника в нём или 0, если в графе нет нетреугольников.

Дан неориентированный граф на \(n\) вершинах и последовательность из \(q\) запросов следующего вида:

  • 1 u v . Добавить в граф ребро \((u, v)\) (\(1 \leq u \lt v \leq n\)). Гарантируется, что перед началом запроса ребра \((u, v)\) в графе нет.
  • 2 u v . Удалить из графа ребро \((u, v)\) (\(1 \leq u \lt v \leq n\)). Гарантируется, что перед началом запроса в графе есть ребро \((u, v)\).

После каждого запроса определите стоимость получившегося графа.

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

В первой строке заданы три целых числа \(n, m, q\) (\(3 \leq n \leq 200\,000, 0 \leq m \leq 200\,000, 1 \leq q \leq 200\,000\)) — количество вершин в графе, количество рёбер в графе перед первым запросом и количество запросов, соответственно.

Во второй строке заданы \(n\) целых чисел \(c_i\) (\(1 \leq c_i \leq 10^8\)), \(i\)-е из которых равняется весу \(i\)-й вершины.

В следующих \(m\) строках задано описание рёбер графа перед первым запросом. В \(i\)-й из них содержится пара целых чисел \(u_i\) и \(v_i\) (\(1 \leq u_i \lt v_i \leq n\)), которая задаёт ребро между вершинами \(u_i\) и \(v_i\). Гарантируется, что каждая пара вершин \((u, v)\) встречается в списке рёбер не более одного раза.

В следующих \(q\) строках содержатся описания запросов в формате, описанном выше.

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

Выведите \(q\) чисел, \(i\)-е из которых равняется стоимости графа, полученного применением к нему первых \(i\) запросов.

Примечание

Рассмотрим пример.

После первого запроса можно взять вершины с номерами 2, 3 и 5 (так как между вершинами 2 и 3 нет ребра) и получить стоимость графа \(2 + 3 + 5 = 10\).

После второго запроса можно взять вершины с номерами 2, 5 и 4 (так как между вершинами 2 и 5 нет ребра) и получить \(2 + 5 + 4 = 11\).

После третьего запроса можно взять вершины с номерами 3, 4 и 5 (так как между вершинами 3 и 4 нет ребра) и получить \(3 + 4 + 5 = 12\).

После четвёртого запроса можно взять вершины с номерами 2, 5 и 4 (так как между вершинами 2 и 5 нет ребра) и получить \(2 + 5 + 4 = 11\).

После пятого запроса можно взять вершины с номерами 4, 5 и 3 (так как между вершинами 4 и 5 нет ребра) и получить \(4 + 5 + 3 = 12\).

Система оценки

Тесты к этой задаче состоят из шести групп. Баллы за каждую группу ставятся только при прохождении всех тестов группы и всех тестов необходимых групп.

Дополнительные ограничения
Группа Баллы \(n\) \(q\) Необх. группы Комментарий
0 0 Тесты из условия.
1 10 \(n \le 10\) \(q \le 100\) 0
2 10 \(n \le 300\) \(q \le 500\) 0 – 1
3 15 \(n \le 2000\) \(q \le 2000\) 0 – 2
4 20 \(n \le 2000\) 0 – 3
5 20 Нет запросов добавления.
6 25 0 – 5
Примеры
Входные данные
5 4 5
1 2 3 4 5
2 5
3 5
4 5
3 4
1 2 4
2 2 5
2 3 4
1 3 4
2 4 5
Выходные данные
10
11
12
11
12
Сдать: для сдачи задач необходимо войти в систему