Advertisement
mikymaione

Algo_20160128

Jun 25th, 2017
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.07 KB | None | 0 0
  1. public void Algo_20160128(int[] A)
  2. {
  3.     var r1 = true;
  4.     var r2 = true;
  5.  
  6.     var this_T = 0;
  7.     var Gt_T = 0;
  8.  
  9.     var B = new int[A.Length];
  10.     var x = 0;
  11.  
  12.     B[0] = A[0];
  13.     for (var i = A.Length - 1; i > 0; i--)
  14.         B[x += 1] = A[i];
  15.  
  16.     var Gt = this.Trasposto("Gt_" + Nome, false);
  17.  
  18.     this.DFS_Visita(this.get_nodo(A[0]), ref this_T);
  19.     Gt.DFS_Visita(Gt.get_nodo(A[0]), ref Gt_T);
  20.  
  21.     for (var i = 1; i < A.Length; i++)
  22.     {
  23.         var nod_pre = this.get_nodo(A[i - 1]);
  24.         var nod = this.get_nodo(A[i]);
  25.  
  26.         var s = ControllaIntervallo(nod_pre.discovered, nod_pre.finished, nod.discovered, nod.finished);
  27.  
  28.         if (s != eIntervallo.Contiene)
  29.             r1 = false;
  30.     }
  31.  
  32.     for (var i = 1; i < B.Length; i++)
  33.     {
  34.         var nod_pre = Gt.get_nodo(B[i - 1]);
  35.         var nod = Gt.get_nodo(B[i]);
  36.  
  37.         var s = ControllaIntervallo(nod_pre.discovered, nod_pre.finished, nod.discovered, nod.finished);
  38.  
  39.         if (s != eIntervallo.Contiene)
  40.             r2 = false;
  41.     }
  42.  
  43.     var r = r1 || r2;
  44.  
  45.     Console.WriteLine("Per il grafo {0}, {1}esiste un percorso che passa per [{2},{3}]", Nome, (r ? "" : "non "), string.Join(",", A), A[0]);
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement