Testul de orientare
Descriere
Se dau trei puncte în plan, \(P, Q, R\), de coordonate \(P = (x_P, y_P)\), \(Q = (x_Q, y_Q)\) și \(R = (x_R, y_R)\). Să se stabilească poziția punctului \(R\) față de dreapta \(PQ\), folosind testul de orientare descris în cursul 8 .
Date de intrare
Se va citi de la tastatură \(t\), reprezentând numărul de teste. Următoarele \(t\) linii vor descrie fiecare câte un test. Fiecare linie conține șase numere întregi: \(x_P\), \(y_P\), \(x_Q\), \(y_Q\), \(x_R\) și \(y_R\), reprezentând coordonatele punctelor \(P\), \(Q\), \(R\).
Date de ieșire
Pentru fiecare test se va afișa, pe câte un rând separat, un mesaj corespunzator pozitiei punctului \(R\):
LEFT
(dacă punctul \(R\) se află la stânga dreptei \(PQ\))RIGHT
(dacă punctul \(R\) se află la dreapta dreptei \(PQ\))TOUCH
(dacă punctul \(R\) se află pe dreapta \(PQ\))
Restricții și precizări
- \(1 \leq t \leq 10^5\)
- \(-10^9 \leq x_p, y_p, x_q, y_q, x_r, y_r \leq 10^9\)
De asemenea, trebuie să aveți în vedere că în mediul de lucru de pe CMS nu aveți posibilitatea să importați biblioteci externe (de exemplu, nu puteți importa numpy
ca să folosiți numpy.linalg.det
).
Exemplu
Input
3
1 1 5 3 2 3
1 1 5 3 4 1
1 1 5 3 3 2
Output
LEFT
RIGHT
TOUCH
Explicație
Datele de mai sus corespund următoarei situații: