Форум программистов, компьютерный форум CyberForum.ru

Алгоритмы на графах - C++

Восстановить пароль Регистрация
 
tvboy
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 99
09.06.2013, 07:28     Алгоритмы на графах #1
Изолированные города

В государстве N городов с номерами 1.2….N. Некоторые города связаны между собой дорогами и образуют штат. Сколько штатов в государстве.

Формат входного файла

Во входном файле записаны сначала два числа N и M, задающие соответственно количество городов и количество дорог (1≤N≤100, 0≤M≤1000), а затем перечисляются попарно связанные дорогами города. Каждая дорога задается номерами городов, которые она соединяет.
Формат выходного файла

В выходной файл выведите одно число – количество штатов в государстве.

Примеры:

input.txt 6 3 1 3 1 5 2 6 output.txt 3

0. Предпринять действия, позволяющие в дальнейшем оптимальнее искать города, соединенные дорогами с данным:
0.1. Определяем структура из двух чисел, описывающая дорогу.
0.2. Заводим массив этих структур длиной 2М.
0.3. Каждую считанную дорогу записываем в этот массив дважды: в прямом и обратном направлении.
0.4. Сортируем массив по первому полю для обеспечения бинарного поиска.
Таким образом сокращаем как объем необходимой памяти, так и сложность алгоритма.

Ребята помогите пожалуйста буду очень благодарен.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2013, 07:28     Алгоритмы на графах
Посмотрите здесь:

C++ Алгоритмы поиска
C++ "Поиск путей на графах". С++
Вопросы о графах C++
C++ Алгоритмы на C++
C++ Циклические алгоритмы
Алгоритмы сжатия C++
C++ Алгоритмы С++
Алгоритмы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
 Аватар для Catstail
21434 / 10219 / 1666
Регистрация: 12.02.2012
Сообщений: 17,092
09.06.2013, 09:54     Алгоритмы на графах #2
мне кажется, здесь проще поступить так:
0) обнулить число штатов
1) из номеров дорог построить матрицу смежности;
2) из первого еще не посещенного города выполнить обход графа (в глубину или ширину - неважно);
3) увеличить число штатов на 1
4) проверить, есть ли непосещенные города
4a) нет - вывести число штатов -> конец
4b) да - на п. 2
Yandex
Объявления
09.06.2013, 09:54     Алгоритмы на графах
Ответ Создать тему
Опции темы

Текущее время: 01:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru