#include #include #include #include #include #include #include using namespace std; #define ll long long const int maxn=50+10; /** 1. 很多提问:看! 狼人只是第一次杀人 2. 细节题? >1 发 错误 再看清楚规则 **/ bool vis[maxn]; int id[maxn],a[maxn][maxn]; int main() { int t,i,j,n,lang,pos; scanf("%d",&t); while (t--) { scanf("%d",&n); for (i=1;i<=n;i++) scanf("%d",&id[i]); ///can vector .pop_back() .back() for (i=1;i<=n;i++) for (j=1;j<=n;j++) scanf("%d",&a[i][j]); for (i=1;i<=n;i++) vis[i]=0; for (i=1;i<=n;i++) if (id[i]==1) break; lang=i; pos=a[lang][1]; j=n; bool r; while (j--) { if (pos==lang) { r=1; break; } else if (j<=2) ///加上狼人 { r=0; break; } vis[pos]=1; for (i=1;i<=n;i++) if (vis[a[pos][i]]==0) break; pos=a[pos][i]; } if (r==0) printf("langren\n"); else printf("lieren\n"); } return 0; } /** 5 1 0 0 0 0 3 4 1 5 2 2 4 1 5 3 2 1 3 5 4 5 2 1 3 4 5 1 4 3 2 3 0 1 0 3 1 2 3 2 1 2 3 1 **/