От матрицы смежности к списку ребер, ориентированный граф - C#
Формулировка задачи:
Ориентированный граф задан матрицей смежности, выведите его представление в виде списка ребер.
Формат входных данных
На вход программы поступает число n ( 1<=n<=100) – количество вершин графа, а затем n строк по n чисел, каждое из которых равно 0 или 1, – его матрица смежности.Формат выходных данных
Выведите список ребер заданного графа. Помогите разобраться с этой задачей. Пробовал пройти двумя циклами графа,потом если а[i,j]==1, то выводил i и j Подскажите пожалуйста,что делаю не так?входные данные
3 0 1 0 0 0 1 1 1 0выходные данные
1 2 2 3 3 1 3 2
Листинг программы
- static void Main(string[] args)
- {
- int n = Convert.ToInt32(Console.ReadLine());
- int[,] a = new int[n, n];
- a = Massiv(a);
- for (int i = 0; i < n; i++)
- {
- for (int j = i; j <n; j++)
- {
- if (a[i, j] == 1)
- {
- Console.WriteLine(i+ " " +j);
- }
- }
- }
- }
Решение задачи: «От матрицы смежности к списку ребер, ориентированный граф»
textual
Листинг программы
- int n = Convert.ToInt32(Console.ReadLine());
- List<int>[] a = new List<int>[n];
- for (int i = 0; i < n; i++)
- {
- string[] strings = Console.ReadLine().Split();
- a[i] = new List<int>();
- for (int j = 0; j < strings.Length; j++)
- {
- if (strings[j] == "1")
- {
- Console.WriteLine("{0} {1}", i+1, j+1);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д