Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <vector>
- #include <algorithm>
- using namespace std;
- int main()
- {
- int t = 0;
- scanf("%d", &t);
- while (t--)
- {
- int n = 0, m = 0;
- scanf("%d%d", &n, &m);
- vector<vector<int>> tab(n, vector<int>(m));
- vector<vector<int>> stroki(n);
- for (int i = 0; i < n; i++)
- {
- for (int q = 0; q < m; q++)
- {
- int x = 0;
- scanf("%d", &x);
- stroki[i].push_back(x);
- }
- }
- vector<int> stolb(n);
- for (int q = 0; q < n; q++)
- {
- scanf("%d", &stolb[q]);
- }
- for (auto sett : stroki)
- {
- int f = 0;
- for (; f < sett.size(); f++)
- {
- if (sett[f] == stolb[0])
- {
- break;
- }
- }
- if (f != sett.size())
- {
- tab[0] = move(sett);
- for (int g = 1; g < n; g++)
- {
- tab[g][f] = stolb[g];
- }
- break;
- }
- }
- for (int h = 1; h < m; h++)
- {
- vector<int> stolb2(n);
- for (int q = 0; q < n; q++)
- {
- scanf("%d", &stolb2[q]);
- }
- for (int i = 0; i < m; i++)
- {
- if (tab[0][i] == stolb2[0])
- {
- for (int g = 1; g < n; g++)
- {
- tab[g][i] = stolb2[g];
- }
- break;
- }
- }
- }
- for (int i = 0; i < n; i++)
- {
- for (int q = 0; q < m; q++)
- {
- printf("%d ", tab[i][q]);
- }
- puts("");
- }
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment