Задачи
Малые циклы
Малые циклы
Прочитав предлагаемые на соревнования задачи, зебра Гиппо обратила внимание на то, что в максимальном тесте к одной из задач в графе слишком мало рёбер. Тест представляет собой неориентированный граф \textbf{G}, обладающий следующими свойствами:
\begin{itemize}
\item \textbf{G} - простой граф, то есть он не содержит петель и кратных рёбер.
\item \textbf{G} является связным.
\item \textbf{G} не содержит простых циклов длиной \textbf{4} или более. Последовательность \textbf{k} различных вершин \textbf{v_1}, ..., \textbf{v_\{k \}}называется простым циклом длины \textbf{k}, если для каждого \textbf{i} вершины \textbf{v_i} и \textbf{v_\{i+1\}} соединены ребром и, кроме того, \textbf{v_1} и \textbf{v_k} также соединены ребром.
\end{itemize}
Зебра Гиппо хочет добавить к этому графу дополнительные рёбра так, чтобы вышеупомянутые свойства по-прежнему сохранялись. Какое количество дополнительных рёбер ей удастся добавить?
\InputFile
Первая строка входного файла содержит два целых числа \textbf{V} (\textbf{1} ≤ \textbf{V} ≤ \textbf{10^5}) и \textbf{E} (\textbf{0} ≤ \textbf{E} ≤ \textbf{10^5}), разделённые пробелом. Здесь \textbf{V} - количество вершин графа \textbf{G}, а \textbf{E} - количество рёбер графа \textbf{G}.
Последующие \textbf{E} строк задают рёбра графа. \textbf{i}-я из этих строк содержит два целых числа \textbf{a_i} и \textbf{b_i} (\textbf{1} ≤ \textbf{a_i} < \textbf{b_i} ≤ \textbf{V}), разделённые пробелом - номера вершин, которые соединяет \textbf{i}-е ребро. Вершины пронумерованы от \textbf{1} до \textbf{V}. Гарантируется, что \textbf{G} обладает описанными в условии задачи свойствами.
\OutputFile
Выведите наибольшее количество рёбер, которые зебра Гиппо может добавить к графу \textbf{G} с сохранением вышеперечисленных свойств.
Входные данные #1
7 6 1 2 1 3 1 4 1 5 1 6 1 7
Выходные данные #1
3