#include #include using namespace std; #define zfor(i, zn) for(int i = 0; i < zn; ++i) bool isAlive(int no, vector death); int main() { /*FILE* stream; freopen_s(&stream, "in.txt", "r", stdin);*/ ios::sync_with_stdio(false); cin.tie(0); int T; int n; int wolf = 0; cin >> T; while (T--) { vector death; cin >> n; vector vec(n, 0); vector> vec2(n, vec); zfor(i, n) { cin >> vec[i]; } zfor(i, n) { zfor(j, n) { cin >> vec2[i][j]; } } zfor(i, n) { if (vec[i] == 1) { wolf = i; break; } } int curr = 1; death.push_back(vec2[wolf][curr - 1]); auto dp = vec2[wolf][curr - 1]; if (dp == wolf + 1) { cout << "lieren" << endl; } else { for (;;) { if (n - death.size() <= 2) { cout << "langren" << endl; break; } int ii = 0; while (!isAlive(vec2[dp - 1][ii], death)) { ++ii; } if (vec2[dp - 1][ii] == wolf + 1) { cout << "lieren" << endl; break; } else { auto au = vec2[dp - 1][ii]; death.push_back(au); dp = au; } } } } return 0; } bool isAlive(int no, vector death) { for (auto to : death) { if (to == no) return false; } return true; }