Задачі
Многокутник
Многокутник
Многокутник складається з n вершин і лежить на нескінченній прямокутній сітці. Всі вершини многокутника мають цілочисельні координати. Сторони даного многокутника не перетинаються. Потрібно знайти повну довжину лінійних сегментів сітки, які лежать строго в даному многокутнику (див. малюнки нижче).
Вхідні дані
В першому рядку міститься число n (3 ≤ n ≤ 100 000). В кожному із наступних n рядків містяться два цілих числа − координати вершин многокутника (-5∙108
≤ x, y ≤ 5∙108
). Координати задаються в порядку обходу або за, або проти годинникової стрілки.
Вихідні дані
Вивести одне єдине число (з точністю до 3 знаків після десяткової крапки) − повну довжину лінійних сегментів сітки, які лежать строго в даному многокутнику.
Пояснення першого тесту
- Сумарна довжина горизонтальних ліній: 4/3 + 8/3 = 4
- Сумарна довжина вертикальних ліній: 3 + 2 + 1 = 6
- Тому загальна довжина рівна 4 + 6 = 10
Пояснення другого тесту
- Сумарна довжина горизонтальних ліній: 1 + 2 + 4 = 7
- Сумарна довжина вертикальних ліній: 9/4 + 3/2 + 7/4 = 5.5
- Тому загальна довжина рівна 7 + 5.5 = 12.5
Вхідні дані #1
3 5 1 2 4 1 1
Вихідні дані #1
10.000