eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Треугольники

Треугольники

Вы получили очень странный подарок на день рождения: два треугольника в трехмерном пространстве. Каждый треугольник состоит из трех бесконечно тонких сегментов, и каждый сегмент остается прямым независимо от того, насколько сильно Вы сжимаете его. На самом деле Вы хотите получить только один треугольник, поэтому пытаетесь переместить треугольники далеко друг от друга, возможно поворачивая один или оба, так чтобы можно было выбросить один из них. Является ли это возможным? Или они запутались?

Входные данные

Первая строка содержит количество тестов t (1t1000). Каждый тест состоит из двух строк. Первая строка содержит 9 целых чисел x1, y1, z1, x2, y2, z2, x3, y3, z3 на промежутке [-1000, 1000], задающих координаты вершин первого треугольника. Вторая строка содержит другие 9 целых чисел x'[1], y'[1], z'[1], x'[2], y'[2], z'[2], x'[3], y'[3], z'[3] на промежутке [-1000, 1000] и задают координаты вершин второго треугольника. Оба треугольника невырожденные, то есть соответствующие тройкам точки не коллинеарны. Кроме того, гарантируется, что ни одна пара отрезков из двух разных треугольников не пересекается, и не существует общей плоскости, содержащей в себе оба треугольника.

Выходные данные

Для каждого теста вывести в отдельной строке YES если треугольники запутаны и NO если их можно переместить друг от друга на большое расстояние.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
2
0 0 0 10 0 0 0 10 0
1 1 10 1 1 -10 10 10 0
0 0 0 10 0 0 0 10 0
11 0 0 0 11 0 11 11 1
Выходные данные #1
YES
NO
Источник 2013 German Collegiate Programming Contest