Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.51 KB | None | 0 0
  1. void Traveler::WidenCities(int w)
  2. {
  3. //INIT POMOCNICZE
  4. int **path2 = new int*[t];
  5.  
  6. int ***cities2 = new int**[t]; //[]
  7. cities2[0] = new int*[N[0]];
  8. for (int j = 0; j < N[0]; j++)
  9. {
  10. cities2[0][j] = new int[N[0]]; //[][][]
  11. }
  12.  
  13. for (int i = 0; i < t; i++)
  14. {
  15. path2[i] = new int[2 * N[0]];
  16. }
  17.  
  18. int *LB2 = new int[t];
  19. int *status2 = new int[t];
  20. int *N2 = new int[t];
  21. int *C2 = new int[t];
  22.  
  23. //KOPIUJ DO POMOCNICZYCH
  24. for (int i = 0; i < t; i++)
  25. {
  26. for (int j = 0; j < 2 * N[0]; j++)
  27. {
  28. path2[i][j] = path[i][j];
  29. }
  30. }
  31. for (int i = 0; i < t; i++)
  32. {
  33. for (int j = 0; i < N[0]; j++)
  34. {
  35. for (int k = 0; k < N[0]; k++)
  36. {
  37. cities2[i][j][k] = cities[i][j][k];
  38. }
  39. }
  40. }
  41.  
  42. for (int i = 0; i < t; i++)
  43. {
  44. LB2[i] = LB[i];
  45. status2[i] = status[i];
  46. N2[i] = N[i];
  47. C2[i] = C[i];
  48. }
  49. //DELETE 1
  50. for (int i = 0; i < w; i++)
  51. {
  52. for (int j = 0; j < w; j++)
  53. {
  54. delete[] cities[i][j];
  55. }
  56. }
  57. for (int i = 0; i < t; i++)
  58. {
  59. delete[] cities[i];
  60. }
  61. delete[] cities;
  62.  
  63. for (int i = 0; i < 2 * N[0]; i++)
  64. {
  65. delete[] path[i];
  66. }
  67. delete[] path;
  68. delete[] LB;
  69. delete[] N;
  70. delete[] C;
  71. delete[] status;
  72. //INIT PIERWSZE
  73. t += t;
  74.  
  75. path = new int*[t];
  76.  
  77. cities = new int**[t]; //[]
  78. cities[0] = new int*[N2[0]];
  79. for (int j = 0; j < N2[0]; j++)
  80. {
  81. cities[0][j] = new int[N2[0]]; //[][][]
  82. }
  83.  
  84. for (int i = 0; i < t; i++)
  85. {
  86. path[i] = new int[2 * N2[0]];
  87. }
  88.  
  89. for (int i = 0; i < t; i++)
  90. {
  91. for (int j = 0; j < 2 * N2[0]; j++)
  92. {
  93. path[i][j] = 0;
  94. }
  95. }
  96.  
  97. LB = new int[t];
  98. status = new int[t];
  99. N = new int[t];
  100. C = new int[t];
  101.  
  102. for (int i = 0; i < t; i++)
  103. {
  104. LB[i] = 0;
  105. status[i] = 0;
  106. N[i] = 0;
  107. C[i] = 0;
  108. }
  109.  
  110. //KOPIUJ Z POMOCNICZYCH
  111. for (int i = 0; i < t/2; i++)
  112. {
  113. for (int j = 0; j < 2 * N2[0]; j++)
  114. {
  115. path[i][j] = path2[i][j];
  116. }
  117. }
  118. for (int i = 0; i < t/2; i++)
  119. {
  120. for (int j = 0; i < N2[0]; j++)
  121. {
  122. for (int k = 0; k < N2[0]; k++)
  123. {
  124. cities[i][j][k] = cities2[i][j][k];
  125. }
  126. }
  127. }
  128.  
  129. for (int i = 0; i < t/2; i++)
  130. {
  131. LB[i] = LB2[i];
  132. status[i] = status2[i];
  133. N[i] = N2[i];
  134. C[i] = C2[i];
  135. }
  136. //USUN POMOCNICZE
  137. for (int i = 0; i < w; i++)
  138. {
  139. for (int j = 0; j < w; j++)
  140. {
  141. delete[] cities2[i][j];
  142. }
  143. }
  144. for (int i = 0; i < t/2; i++)
  145. {
  146. delete[] cities2[i];
  147. }
  148. delete[] cities2;
  149.  
  150. for (int i = 0; i < 2 * N[0]; i++)
  151. {
  152. delete[] path2[i];
  153. }
  154. delete[] path2;
  155. delete[] LB2;
  156. delete[] N2;
  157. delete[] C2;
  158. delete[] status2;
  159.  
  160. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement