Дан ориентированный граф. Требуется определить, есть ли в нем цикл. Формат входных данных: В первой строке вводится число n - количество вершин и m - количество ребер (1 <= n, m <= 10^5). Далее в m строках следует по 2 числа u, v - вершины графа,
- Программирование
Условие:
Дан ориентированный граф. Требуется определить, есть ли в нем цикл. Обратите внимание на третий тест и подумайте, почему в нем нет цикла.
Формат входных данных
В первой строке вводится число \( n \) - количество вершин и \( m \) - количество ребер. ( \( 1 \leqslant n, m \leqslant 10^{5} \) ). Далее в \( m \) строках следует по 2 числа \( u, v \) - вершины графа, соединенные ребром.
Формат выходных данных
Выведите 0, если в заданном графе нет цикла, и 1 , если он есть.
Примеры
\begin{tabular}{|ll|l|l|}
\hline & стандартный ввод & & стандартный вывод \\
\hline 4 & 4 & 1 & \\
1 & 2 & & \\
2 & 3 & 4 & \\
3 & 4 & & \\
\hline 3 & 2 & 0 \\
1 & 2 & & \\
1 & 3 & & \\
\hline 3 & 3 & & \\
1 & 2 & & \\
2 & 3 & 3 & \\
1 & & \\
\hline
\end{tabular}
Решение:
Для определения наличия цикла в ориентированном графе можно использовать алгоритм обхода в глубину (DFS). Мы будем отслеживать состояние каждой вершины: не посещенная, посещенная и в процессе посещения. Если мы обнаружим вершину, которая уже находится в процессе посещения, это означает, что мы нашли цикл. Вот пример реализации на Python: ```python def has_cycle(graph, n): visited = [0] * n # 0 - не посещена, 1 - в процессе посещения, 2 - посещена def dfs(v): if visited[v] == 1: # Вершина уже в процессе посещения, значит цикл return True if visited[v] ==...
Похожие задачи
Не нашел нужную задачу?
Воспользуйся поиском
AI помощники
Выбери предмет
- Правоохранительные органы
- Пожарная безопасность
- Парикмахерское искусство
- Природообустройство и водопользование
- Почвоведение
- Приборостроение и оптотехника
- Промышленный маркетинг и менеджмент
- Производственный маркетинг и менеджмент
- Процессы и аппараты
- Программирование
- Право и юриспруденция
- Психология
- Политология
- Педагогика
- Трудовое право
- Теория государства и права (ТГП)
- Таможенное право
- Теория игр
- Теория вероятностей
- Теоретическая механика
- Теория управления
- Технология продовольственных продуктов и товаров
- Технологические машины и оборудование
- Теплоэнергетика и теплотехника
- Туризм
- Товароведение
- Таможенное дело
- Торговое дело
- Теория машин и механизмов
- Транспортные средства