Codeforces Round 339 (Div. 1) |
---|
Закончено |
На новый год Пете подарили новую снегоуборочную машину. Конечно, Пете сразу захотелось её испытать. Прочитав инструкцию, он понял, что она работает не так, как обычные снегоуборочные машины. Для того чтобы она работала, нужно привязать её к некоторой точке, которую она не покрывает, после чего включить, и тогда она проедет по окружности вокруг этой точки и уберёт снег со всего своего пути.
Более формально, будем считать Петину машину многоугольником на плоскости. Тогда после включения она проедет круг вокруг некоторой точки, к которой Петя её привязал (эта точка находится строго снаружи многоугольника). Таким образом каждая точка внутри или на границе многоугольника пройдёт по окружности с центром в точке, к которой Петя привязал свою машину.
Петя решил привязать свою машину к точке P, и теперь ему интересно, какова площадь области, с которой машина уберёт снег. Помогите ему.
В первой строке входного файла даны три целых числа — количество вершин в многоугольнике n (3 ≤ n ≤ 100 000) и координаты точки P.
В следующих n строках даны по два целых числа — координаты вершин многоугольника в порядке обхода по или против часовой стрелки. Гарантируется, что никакие три подряд идущие точки многоугольника не лежат на одной прямой.
Все числа во входном файле целые, не превосходят по модулю 1 000 000.
Выведите одно вещественное число — площадь области, которая будет очищена от снега. ответ на задачу с абсолютной или относительной погрешностью не более 10 - 6. Ваш ответ будет считаться правильным, если его абсолютная или относительная ошибка не будет превосходить 10 - 6.
А именно: пусть ваш ответ равен a, а ответ жюри — b. Проверяющая программа будет считать ваш ответ правильным, если .
3 0 0
0 1
-1 2
1 2
12.566370614359172464
4 1 -1
0 0
1 2
2 0
1 1
21.991148575128551812
В первом примере из условия снег будет убран с этой территории:
Название |
---|