Задание 23 ЕГЭ по информатике

100Бid 1188111 балл

Определение количества различных путей между вершинами

В текстовом файле содержится описание ациклического ориентированного взвешенного графа. В каждой строке файла записаны два натуральных числа LL и MM, где LL и MM – номера вершин графа. Ребро ведёт из вершины LL в вершину MM. Таким образом, количество строк в файле равно количеству рёбер в графе. Две вершины графа не могут быть соединены более чем одним ребром.

Найдите и запишите в ответе количество различных путей из вершины с номером 90 в вершину с номером 457. Существование хотя бы одного такого пути гарантируется. Под путём понимается последовательность вершин, в которой каждая следующая вершина соединена с предыдущей направленным ребром. Каждое ребро может использоваться не более одного раза. Для выполнения этого задания следует написать программу.

Вершины графа могут быть пронумерованы не подряд. L1000L ≤ 1000, M1000M ≤ 1000. Количество строк в файле не превосходит 200. Числа в строках разделены произвольным ненулевым количеством пробелов и/или табуляций.

Типовой пример организации данных во входном файле для графа на рисунке

Определение количества различных путей между вершинами, задание 23, рис.1

100 12

6 7

6 1

1 7

7 100

4 100

1 100

1 4

Для приведённого примера верным ответом будет 3: 1 → 100, 1 →7 → 100, 1 → 4 → 100.

Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.

Файл к заданию: https://drive.google.com/file/d/1SMP7uFtqbispztt0qXOJ6ue1aazeR9xG/view?usp=drive_link