Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. using namespace std;
  5.  
  6. class matr {
  7. int** a;
  8. int n, m;
  9. public:
  10. matr(int in, int im) {
  11. n = in;
  12. m = im;
  13. a = new int*[n];
  14. for (int i = 0; i < n; i++)
  15. a[i] = new int[m];
  16. }
  17.  
  18. int get_element(int i, int j) {
  19. return a[i][j];
  20. }
  21.  
  22. int get_n() {
  23. return n;
  24. }
  25.  
  26. int get_m() {
  27. return m;
  28. }
  29.  
  30. void read() {
  31. for (int i = 0; i < n; i++) {
  32. for (int j = 0; j < m; j++)
  33. cin >> a[i][j];
  34. }
  35. }
  36.  
  37. ~matr() {
  38. for (int i = 0; i < n; i++)
  39. delete a[i];
  40. delete [] a;
  41. }
  42. };
  43.  
  44. class graph {
  45. vector<int>* a;
  46. matr* matr_s;
  47. int n, k;
  48. public:
  49. graph(matr* matr_S, matr* matr_i) {
  50. matr_s = matr_S;
  51. n = matr_s->get_n();
  52. k = matr_i->get_n();
  53. a = new vector<int>[n];
  54. int v = 0, u = 0, t;
  55. for (int i = 0; i < k; i++){
  56. for (int j = 0; j < n; j++) {
  57. t = 0;
  58. v = 0;
  59. u = 0;
  60. if (matr_i->get_element(i, j) == 1) {
  61. u = j;
  62. t++;
  63. } else
  64. if (matr_i->get_element(i, j) == -1) {
  65. v = j;
  66. t++;
  67. }
  68. if (t == 2)
  69. break;
  70. }
  71. a[v].push_back(u);
  72. }
  73. }
  74.  
  75. ~graph() {
  76. for (int i = 0; i < n; i++) {
  77. a[i].erase(a[i].begin(), a[i].end());
  78. }
  79. delete [] a;
  80. }
  81. };
  82.  
  83.  
  84. find_path(int start, int finish) {
  85.  
  86. }
  87.  
  88.  
  89. int main() {
  90. int n, m;
  91. cout<<"Number of vertices:"<<endl;
  92. cin >> n;
  93. cout<<"Number of edges:"<<endl;
  94. cin >> m;
  95.  
  96. matr* s = new matr(n, n);
  97. s -> read();
  98.  
  99. matr* i = new matr(m, n);
  100. i -> read();
  101.  
  102. graph(s, i);
  103.  
  104. return 0;
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement