Расследуя очередное убийство, Шерлок Холмс определил n подозреваемых. Он точно знает, что убийство совершил ровно один из них. Чтобы определить, кто именно это сделал, детектив выстроил подозреваемых в ряд и пронумеровал их числами от 1 до n. После этого он спросил каждого: «Кто из вас совершил убийство?». Подозреваемый номер i ответил либо «Убийство совершил подозреваемый номер ai», либо «Подозреваемый номер ai не совершал убийства». В том числе, подозреваемый мог сказать это про себя (ai = i).
Шерлок Холмс безошибочно определил, что ровно m ответов были правдой, а все остальные — ложью. Помогите ему теперь понять, кто из подозреваемых соврал, а кто сказал правду?
Выходные данные
Выведите n строк. В строке номер i должно быть написано «Truth», если подозреваемый номер i точно сказал правду, «Lie», если подозреваемый номер i точно соврал, и «Not defined», если он мог соврать, а мог и сказать правду, в зависимости от того, кто совершил убийство.
Примечание
В первом примере есть единственный человек, и он признается в убийстве, и Шерлок Холмс знает, что один человек сказал правду. Значит, этот человек говорит правду.
Во втором примере трое подозреваемых и все трое отрицают свою вину. Шерлок Холмс знает, что только двое из них говорят правду. Любой из них может быть убийцей, и поэтому ни про кого из них неизвестно, говорит ли он правду.
В третьем примере второй и четвертый защищают первого и третьего. Но правду сказал только один, значит, первый или третий совершил убийство. Оба они могли совершить убийство, значит, второй и четвертый могут как врать, так и говорить правду. Первый и третий же точно врут, поскольку сваливают вину на второго и четвертого.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
1 1 +1
|
Truth
|
|
2
|
3 2 -1 -2 -3
|
Not defined
Not defined
Not defined
|
|
3
|
4 1 +2 -3 +4 -1
|
Lie
Not defined
Lie
Not defined
|