Модуль: Геометрия


Задача

1 /7


Перевод часов

Теория Нажмите, чтобы прочитать/скрыть


Определения и понятия

Вектор - это направленный отрезок, который задаётся 2-мя координатами.


Умножение вектора на число k - это изменение его длины в k раз. При \(k < 0\) вектор развернётся.

Длина вектора вычисляется по формуле \(\sqrt {x^2 + y^2}\)

Нормированный вектор - вектор единичной длины, получается при делении вектора на его длину.

Сумма векторов получается, если построить второй вектор от конца первого, и пустить вектор в получившуюся точку.

Если x1, y1, x2, y2 - координаты первого и второго векторов, соответственно, то их сумма - вектор с координатами \((x_1 + x_2) \)и \((y_1 + y_2) \).

Разность векторов - сумма, где второй вектор развёрнут (умножен на -1).

Скалярное произведение векторов - число, проекция одного вектора на другой умноженная на его длину. В простейшем случае обычного евклидового пространства иногда используют «геометрическое» определение скалярного произведения ненулевых векторов a и b как произведения длин этих векторов на косинус угла между ними: 
\(a \cdot b = |a| \cdot |b| \cdot cos \alpha\).

Для скалярного произведения вектором справедлива следующая формула:
\(a \cdot b = x_1 \cdot x_2 + y_1 \cdot y_2\)
где x1, y1, x2, y2 - координаты первого и второго вектора, соответственно, позволяет определить, лежит ли второй вектор в той же полуплоскости, что и первый.

Векторное произведение векторов - вектор в трёхмерном пространстве перпендикулярный обоим векторам, по длине равен ориентированной площади параллелограмма, построенного на этих векторах. Произведение длин векторов на синус угла между ними, причём знак этого синуса зависит от порядка операндов: \(a\ х \ b = |a| \cdot |b| \cdot sin \alpha\) 

Если вычислять через координаты:
\(a\ х\ b = x_1 \cdot y_2 + x_2 \cdot y_1\),
где x1, y1, x2, y2 - координаты первого и второго вектора, соответственно, позволяет определить, по какую сторону от прямой, на которой лежит первый вектор, находится второй вектор. Также позволяет находить ориентированную площадь треугольников и параллелограммов.

Поворот вектора выполняется с помощью чёрной магии тайных адептов геометрии Лобачевского.
Чтобы повернуть вектор на угол \(\alpha\) против часовой стрелки (\(\alpha <= 2 \cdot \pi\), привыкайте к углам в радианах), нужно домножить вектор на такую вот матрицу:
\(\begin{bmatrix} \cos \alpha & -sin \alpha \\ \sin \alpha & cos \alpha \end{bmatrix}\)

Что значит домножить вектор на матрицу? Допустим координаты нашего вектора равны x и y, тогда произведение этого вектора и нашей матрицы будет равно вектору с координатами x' и y':
\(x' = x \cdot cos \alpha - y \cdot sin \alpha \\ y' = x \cdot sin \alpha + y \cdot cos\alpha\)

Вот и получаем новый вектор точно такой же длины, но уже повернутый на угол А против часовой стрелки.

Задача

В плоской стране наступила очередная зима, и нужно срочно переводиться на зимнее время! Проблема в том, что стрелка городских часов (единственная, кстати), находящихся в начале координат, очень-очень тяжёлая, и поэтому рабочие хотят узнать, в какую сторону крутить стрелку будет быстрее. Чтобы упростить вам задачу, они уже посчитали, куда указывает стрелка и куда она должна указывать. Помогите им!
 
Входные данные
В первой строке задаётся точка, куда указывает стрелка. Она задаётся координатами X1 и Y1 (\(-10 <= X_1, Y_1 <= 10\)).
Во второй строке задаётся точка, куда должна указывать стрелка. Она задаётся координатами X2 и Y2 (\(-10 <= X2, Y2 <= 10\)).
Координаты задаются вещественным типом.
 
Выходные данные
В единственной строке выведите "Clockwise", если стрелку нужно крутить по часовой стрелке, "Counter-clockwise", если её нужно крутить против часовой стрелки, и "Doesn't matter", если это займёт одинаковое время, в какую сторону её бы не крутили. Выводить фразы следует без кавычек.

 

Примеры
Входные данные Выходные данные
1
1 0
-1 1
Counter-clockwise

time 1000 ms
memory 32 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w6490
Python94
PascalABC13
Комментарий учителя