Advertisement
alphaver

Untitled

Mar 9th, 2020
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.86 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.     freopen("in.txt", "r", stdin);
  8.     freopen("out.txt", "w", stdout);
  9.  
  10.     int n, m;
  11.     scanf("%i %i", &n, &m);
  12.     vector< vector<int> > A(n, vector<int>(n));
  13.     for (int i = 0; i < n; ++i)
  14.         for (int j = 0; j < n; ++j)
  15.             scanf("%i", &A[i][j]);
  16.     list<int> stack;
  17.     int x, y;
  18.     for (int i = 0; i < m; ++i)
  19.     {
  20.         scanf("%i", &x);
  21.         if (!stack.empty())
  22.         {
  23.             y = stack.back();
  24.             if (A[x - 1][y - 1] != 0)
  25.             {
  26.                 stack.pop_back();
  27.                 x = A[x - 1][y - 1];
  28.             }
  29.         }
  30.         stack.push_back(x);
  31.     }
  32.  
  33.     for (auto pos = stack.rbegin(); pos != stack.rend(); ++pos)
  34.     {
  35.         if (pos != stack.rbegin())
  36.             putchar(' ');
  37.         printf("%i", *pos);
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement