Вам дан неориентированный граф, состоящий из \(n\) вершин и \(n\) ребер. Гарантируется, что заданный граф является связным (то есть возможно достичь любую вершину из любой другой вершины) и не содержит петель и кратных ребер.
Ваша задача — посчитать количество простых путей длины хотя бы \(1\) в заданном графе. Заметьте, что пути, которые отличаются только направлением, являются одинаковыми (то есть вам необходимо посчитать количество неориентированных путей). Например, пути \([1, 2, 3]\) и \([3, 2, 1]\) являются одинаковыми.
Вам необходимо ответить на \(t\) независимых наборов тестовых данных.
Напомним, что путем в графе называется такая последовательность вершин \(v_1, v_2, \ldots, v_k\), что каждая пара соседних (последовательных) вершин в этой последовательности соединена ребром. Длиной пути является количество ребер в нем. Простым путем называется такой путь, что все вершины в нем различны.
Выходные данные
Выведите одно целое число для каждого набора тестовых данных: количество простых путей длины хотя бы \(1\) в заданном графе. Заметьте, что пути, которые отличаются только направлением, являются одинаковыми (то есть вам необходимо посчитать количество неориентированных путей).
Примечание
Рассмотрим второй набор тестовых данных примера. Он выглядит следующим образом:

Здесь есть \(11\) различных простых путей:
- \([1, 2]\);
- \([2, 3]\);
- \([3, 4]\);
- \([2, 4]\);
- \([1, 2, 4]\);
- \([1, 2, 3]\);
- \([2, 3, 4]\);
- \([2, 4, 3]\);
- \([3, 2, 4]\);
- \([1, 2, 3, 4]\);
- \([1, 2, 4, 3]\).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
3 3 1 2 2 3 1 3 4 1 2 2 3 3 4 4 2 5 1 2 2 3 1 3 2 5 4 3
|
6
11
18
|