Перезагрузка кактуса
Перезагрузка кактуса
Кактус - это связный неориентированный граф, в котором каждое ребро лежит не более чем на одном цикле. Интуитивно кактус - это обобщение дерева, в котором разрешены некоторые циклы. Вам следует найти диаметр заданного кактуса.
В приведенном кактусе кратчайшее расстояние между вершинами 6 и 12 проходит по 8 ребрам и является наибольшим кратчайшим путем в графе, поэтому его диаметр равен 8.
Входные данные
Первая строка содержит числа n и m (1 ≤ n ≤ 50 000, 0 ≤ m ≤ 10 000). Здесь n - количество вершин в графе. Вершины пронумерованы от 1 до n. Ребра заданы множеством реберно - непересекающихся путей, где m число таких путей.
Каждая из следующих m строк содержит путь в графе. Путь начинается числом ki
(2 ≤ ki
≤ 1000), за которым следуют ki
целых чисел от 1 до n. Эти ki
чисел представляют вершины графа в пути. Соседние вершины в пути различны. Путь может проходить по одной вершине несколько раз, однако каждое ребро встречается только один раз. Мультиребера в графе отсутствуют (между любыми двумя вершинами существует не более одного ребра).
Граф в примере является кактусом.
Выходные данные
Вывести одно число - диаметр кактуса.
15 3 9 1 2 3 4 5 6 7 8 3 7 2 9 10 11 12 13 10 5 2 14 9 15 10
8