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

Зaдача на графы с тимуса 1358 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Двумерная матрица http://www.cyberforum.ru/cpp-beginners/thread216937.html
Дана квадратная матрица A(n,n). Найти сумму элементов находящихся ниже главной диагонали. Среди этих элементов найти максимальный положительный элемент и его координаты. Половину задания сделал, а вот найти максимальный положительный элемент(среди элементов находящихся ниже главной диагонали) и его позицию как-то не получается... #include <iostream> #include <ctime> #include <iomanip>...
C++ Разветвленный вычислительные структуры Вычислить значение функции в зависимости от заданного условия. Значения переменных выбрать самостоятельно. http://www.cyberforum.ru/cpp-beginners/thread216920.html
Линейные вычеслительные структуры C++
Вечер добрый)Очень прошу помочь, Вычислить значения переменных, которые указаны в задачах. Значение исходных данных выбрать самостоятельно.
C++ Вопрос по компиляции в Borland C++ 3.1
Здравствуйте! Была задача написать программу используя классы или структуры,которая позволяла бы выводить и вводить данные о собаках. Дословно: Создать абстрактный тип данных - собака, у которой есть порода, кличка и возраст (структура). Определить функции установки и изменения данных и удаления выделенной памяти. Для задания текстовых полей использовать оператор new. Определить функцию...
C++ Структуры http://www.cyberforum.ru/cpp-beginners/thread216910.html
Написать программу для обработки информации о поездах. Информация включает в себя: Номер поезда. Станция отправления. Программа должна позволять пользователю: Считывать данные с клавиатуры и заносить их в файл. Добавлено через 6 минут Или вообще как вносить данные в файл с клавиатуры ???
C++ матрица с условием и преобразованием Я не очень разбираюсь в с++, так как изучала Паскаль Но очень нужно решить вот это задачу если усл. верно то вып. преобразование условие каждый элемент на позиции некратной 3-м нечетен или положителен подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
22.12.2010, 08:16     Зaдача на графы с тимуса 1358
Немного ошибся вот в этом:
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Это значит, что сеть является простой цепочкой.
Вернее будет то что в графе нет ни одного замкнутого цикла.
В общем если коротко то вот что нужно для решения: Поиск в ширину.
Разместить вершины так, как в приложенном Doc1.


В общем вот принятый код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
int main()
{
   int j, i, N, **mas, temp1, temp2, **mas_res, *mas_met, *q, q_st=0, q_end=1;
   std::cin >>N;
   mas=new int*[N];
   mas_res=new int*[N];
   mas_met=new int[N];
   q=new int[N];
   for(i=0; i<N; i++)
   {
       mas_met[i]=-1;
       mas_res[i]=new int[2];
       mas[i]=new int[N];
       for(j=0; j<N; j++)
           mas[i][j]=0;
   }
   for(i=0; i<N-1; i++)
   {
       std::cin>>temp1>>temp2;
       mas[temp1-1][temp2-1]=mas[temp2-1][temp1-1]=1;
   }
   q[0]=0; mas_met[0]=0;
   while(q_end<N)
   {
       for(i=0; i<N; i++)
           if(mas[q[q_st]][i]==1 && mas_met[i]==-1)
           {
               q[q_end++]=i; mas_met[i]=mas_met[q[q_st]]+1;
           }
       q_st++;
   }
   temp1=-1000; i=0;
   int temp=0;
   while(i<N)
   {
       temp2=-1000;
       while(i<N && temp==mas_met[q[i]])
       {
           mas_res[q[i]][0]=temp1;
           mas_res[q[i]][1]=temp2;
           temp2+=2;
           i++;
       }
       temp1+=2;
       temp++;
   }
   for(i=0; i<N; i++)
       std::cout<<mas_res[i][0]<<" "<<mas_res[i][1]<<std::endl;
 
   return 0;
}
Вложения
Тип файла: doc Doc1.doc (23.5 Кб, 24 просмотров)
 
Текущее время: 08:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru