Олимпиадный тренинг

Задача . G. Командные игроки


Есть \(n\) игроков, пронумерованных от \(0\) до \(n-1\). У каждого игрока есть ранг. Ранг \(i\)-го игрока равен \(i\).

Игроки могут создавать команды: команда должна состоять ровно из трех игроков, и никакая пара игроков из этой команды не должна быть в ссоре друг с другом. Ранг команды подсчитывается следующим способом: пусть \(i\), \(j\), \(k\) — ранги игроков в команде и \(i < j < k\), тогда ранг команды будет равен \(A \cdot i + B \cdot j + C \cdot k\).

Вам дана информация о парах поссорившихся игроков. Посчитайте сумму рангов всех возможных команд по модулю \(2^{64}\).

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

В первой строке через пробел заданы два целых числа \(n\) и \(m\) (\(3 \le n \le 2 \cdot 10^5\), \(0 \le m \le 2 \cdot 10^5\)) — количество игроков и количество поссорившихся пар.

Во второй строке через пробел заданы три целых числа \(A\), \(B\) и \(C\) (\(1 \le A, B, C \le 10^6\)) — соответствующие коэффициенты.

В следующих \(m\) строках заданы по два целых числа через пробел \(u_i\) и \(v_i\) (\(0 \le u_i, v_i < n, u_i \neq v_i\)) — пара игроков в ссоре.

Гарантируется, что каждая неупорядоченная пара игроков появляется в тесте не более одного раза.

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

Выведите единственное число — сумму рангов всех возможных команд по модулю \(2^{64}\).

Примечание

В первом примере все \(4\) возможные команды валидны, то есть возможными командами являются: {0, 1, 2}, {0, 1, 3}, {0, 2, 3} {1, 2, 3}.

Во втором примере следующие команды валидны: {0, 2, 3}, {1, 2, 3}.

В третьем примере следующие команды валидны: {0, 1, 2}, {0, 1, 4}, {0, 1, 5}, {0, 2, 4}, {0, 2, 5}, {1, 2, 3}, {1, 2, 4}, {1, 2, 5}.


Примеры
Входные данныеВыходные данные
1 4 0
2 3 4
64
2 4 1
2 3 4
1 0
38
3 6 4
1 5 3
0 3
3 5
5 4
4 3
164

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w644
Комментарий учителя