От матрицы смежности к списку ребер, ориентированный граф - 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
Листинг программы
  1. static void Main(string[] args)
  2. {
  3. int n = Convert.ToInt32(Console.ReadLine());
  4. int[,] a = new int[n, n];
  5. a = Massiv(a);
  6. for (int i = 0; i < n; i++)
  7. {
  8. for (int j = i; j <n; j++)
  9. {
  10. if (a[i, j] == 1)
  11. {
  12. Console.WriteLine(i+ " " +j);
  13. }
  14. }
  15. }
  16. }

Решение задачи: «От матрицы смежности к списку ребер, ориентированный граф»

textual
Листинг программы
  1.             int n = Convert.ToInt32(Console.ReadLine());
  2.             List<int>[] a = new List<int>[n];
  3.  
  4.             for (int i = 0; i < n; i++)
  5.             {
  6.                 string[] strings = Console.ReadLine().Split();
  7.                 a[i] = new List<int>();
  8.                 for (int j = 0; j < strings.Length; j++)
  9.                 {
  10.                     if (strings[j] == "1")
  11.                     {
  12.                         Console.WriteLine("{0} {1}", i+1, j+1);
  13.                     }
  14.                 }
  15.             }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.7 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы