Example #1
0
 // Process the input for graph processing
 public void Process(){
     string line = Console.ReadLine().Trim();
     int T = Int32.Parse(line);
     List<Graph> graphs = new List<Graph>();
     for(int i=0 ; i < T; i++){
         int [] v = Array.ConvertAll(Console.ReadLine().Split(), Int32.Parse);
         int N = v[0];
         int M = v[1];
         Graph g = new Graph(N);
         for(int j=0; j < M; j++){
             int []e = Array.ConvertAll(Console.ReadLine().Split(), Int32.Parse);
             g.AddEdge(e[0], e[1]);
         }
         line = Console.ReadLine().Trim();
         int s = Int32.Parse(line);
         g.StartNode = s;
         g.Process();
         graphs.Add(g);
     }
     
     foreach(Graph g in graphs){
         g.WriteDistance();
         Console.WriteLine();
     }            
 }