- •Лабораторная №4 Алгоритмы на графах
- •Все цепи
- •Кратчайший путь
- •Индивидуальные задания
- •Компоненты связности
- •Длинный путь
- •Расстояние
- •Охотники
- •Изолированные города
- •Все дороги
- •Линия электропередач
- •Два города
- •Формат входного файла
- •Формат выходного файла
- •Два не связанных города
- •Три города
- •Соседние города
- •Удаленные города
- •Новые требования
- •Три города
- •Домино - 2
- •Система дорог
- •Ближайшие города
- •Формат входного файла
- •Формат выходного файла
- •Расстояние между двумя ближайшими
- •Все дороги
- •27. Удаленные города
- •Три города
- •Расстояние
- •30. Путь в ближайший
Домино - 2
Набор домино состоит из прямоугольных костяшек, каждая из которых разделена на две половинки линией, параллельной более короткой стороне. На костяшках полного набора домино обозначены все возможные различные пары чисел: (0, 0), (0, 1), (0, 2),…,(0, 6), (1, 1), (1, 2), (1, 3),…,(1, 6), (2, 2),…, (2, 6), (3,3), (3,4),…,(3,6), …, (6,6).
Из костяшек можно выкладывать цепочки, соединяя пары костяшек короткими сторонами, если количества точек на соседних с местом соединения половинках костяшек равны.
Некоторые костяшки были удалены из полного набора. Требуется определить, самую длинную цепочку в заданном наборе, которую можно построить.
Входные данные
В первой строке записано одно целое число N, равное количеству костяшек в наборе. Каждая і-я из последующих N строк содержит по два числа Ai и Bі. Это количества точек на половинках i-й костяшки.
Выходные данные
В первой строке вывести длину цепочки.
Пример
-
INPUT.TXT
OUTPUT.TXT
6
6 5
5 4
4 3
3 2
1 1
5 2
5
Система дорог
Даны N городов соединенных M дорогами. С любого города можно добраться до любого другого города. Из них оставить дороги, чтобы не осталось циклов и сумма длин оставшихся дорог была минимальна.
Входные данные
В первой строке заданы два целых числа N и M – количество городов и количество дорог. Со второй строки заданы номера городов соединенных дорогами и их длины.
Выходные данные
Напечатать одно число – суммарная длина
Пример
-
INPUT.TXT
OUTPUT.TXT
5 7
1 2 1
1 3 3
1 4 2
2 3 1
3 4 1
4 5 1
3 5 4
5
Ближайшие города
Имеется n городов пронумерованных с 1 до n и m соединяющих их дорог. Расстояния между любыми двумя городами равны 1. Найти два города A и B наименее удаленные от города с номером start. Если их несколько напечатать любые два из них.
Формат входного файла
В первой строке заданы n и m, со второй строки пары целых чисел – номера вершин образующих ребро. В последней строке заданы вершины start.
Формат выходного файла
Вывести два числа – номера вершин A и B ближайшие к городу номер start.
Пример
input.txt |
output.txt |
5 5 1 3 2 3 2 4 4 5 4 3 1 |
3 4 |
Поиск
В тайге N озер. Некоторые озера связаны дорогами. Связанные между собой озера образуют группы. Посчитать количество групп озер.
Формат входного файла
Во входном файле записаны сначала два числа N и M, задающие соответственно количество озер и количество дорог (1≤N≤100, 0≤M≤10000), а затем перечисляются дороги. Каждая дорога задается номерами озер, которые она соединяет.
Формат выходного файла
В выходной файл выведите одно число – количество групп озер.
Примеры
input.txt |
output.txt |
3 3 1 2 1 3 2 3 |
1 |
5 3 1 2 2 3 5 4 |
2 |
7 0 |
7 |
Пустой
Поиск. В доме N комнат. Петя находится в комнате с номером S, Алеша – в комнате P. Сколько комнат посетит Петя, чтобы найти Алеша (включая комнату Алеши). Гарантируется, что путь существует.
Входные данные
Во входном файле записаны сначала числа N и M - количество комнат и количество путей сообщения между комнатами(1≤N≤100). В следующих строках заданы ребра. Затем записаны номера комнат - Пети и Алеши.
Выходные данные
В выходной файл выведите одно число - количество посещенных комнат.
Пример
-
input.txt
output.txt
5 5
1 5
2 5
2 4
3 4
4 5
1 3
3
