Advertisement
Infiniti_Inter

22 - I

Mar 11th, 2020
331
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.20 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6.  
  7.  
  8. public class Graph
  9. {
  10.     private int[][] g;
  11.     private int size;
  12.     public Graph(int size)
  13.     {
  14.         this.size = size;
  15.         g = new int[size][];
  16.         for (int i = 0; i < size; ++i)
  17.             g[i] = new int[size];
  18.  
  19.     }
  20.  
  21.     public Graph(int[][] G)
  22.     {
  23.         size = G.Length;
  24.         g = new int[size][];
  25.         for (int i = 0; i < size; ++i)
  26.             g[i] = new int[size];
  27.  
  28.         for (int i = 0; i < size; ++i)
  29.             for (int j = 0; j < size; ++j)
  30.                 g[i][j] = G[i][j];
  31.     }
  32.  
  33.     public Graph() { }
  34.  
  35.     public void Add(int v, int to)
  36.     {
  37.         v--; to--;
  38.         g[v][to] = 1;
  39.     }
  40.     public void Remove(int v, int to)
  41.     {
  42.         v--; to--;
  43.         g[v][to] = 0;
  44.     }
  45.  
  46.     public void Print()
  47.     {
  48.         for (int i = 0; i < size; ++i)
  49.         {
  50.             for (int j = 0; j < size; ++j)
  51.                 Console.Write(g[i][j] + " ");
  52.             Console.WriteLine();
  53.         }
  54.     }
  55.  
  56.     public void Clear()
  57.     {
  58.         for (int i = 0; i < size; ++i)
  59.             for (int j = 0; j < size; ++j)
  60.                 g[i][j] = 0;
  61.     }
  62.  
  63. }
  64.  
  65.  
  66. class Program
  67. {
  68.     static void Main(string[] args)
  69.     {
  70.         int n = 5;
  71.         Graph gr = new Graph(n);
  72.         gr.Add(1, 3);
  73.         gr.Add(1, 5);
  74.         gr.Add(1, 1);
  75.         gr.Add(1, 2);
  76.         gr.Add(1, 4);
  77.         gr.Add(2, 3);
  78.         gr.Add(4, 3);
  79.         gr.Add(5, 3);
  80.         gr.Add(5, 1);
  81.         gr.Add(3, 1);
  82.         gr.Add(2, 5);
  83.         gr.Add(1, 4);
  84.         gr.Add(4, 3);
  85.         gr.Add(4, 2);
  86.         gr.Add(5, 5);
  87.         gr.Add(3, 5);
  88.         gr.Print();
  89.         Console.WriteLine("============================================");
  90.         int a = 2;
  91.         int b = 3;
  92.         gr.Remove(a, b);
  93.         gr.Print();
  94.         int[][] m = new int[3][];
  95.         m[0] = new int[] { 0, 0, 1 };
  96.         m[1] = new int[] { 1, 0, 1 };
  97.         m[2] = new int[] { 0, 1, 1 };
  98.         gr = new Graph(m);
  99.         Console.WriteLine("============================================");
  100.         gr.Remove(a, b);
  101.         gr.Print();
  102.  
  103.     }
  104.  
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement