#include using namespace std; int main() { vector> st(4), fi(4); for (int i = 0; i < 4; i++) { st[i].resize(4); fi[i].resize(4); for (int j = 0; j < 4; j++) { int x; cin >> x; fi[i][j] = x; (st[i][j] = i * 4 + j + 1) %= 16; } } int x = 3, y = 3; while (st != fi) { int nxt_x, nxt_y; for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { if (fi[x][y] == st[i][j]) nxt_x = i, nxt_y = j; } } if (abs(nxt_x - x) + abs(nxt_y - y) != 1) { cout << "No" << endl; return 0; } swap(st[x][y], st[nxt_x][nxt_y]); x = nxt_x; y = nxt_y; } cout << "Yes" << endl; }