아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Ужин из жуков

시간 제한2초메모리 제한1024 MB

요약
원 밖의 두 점을 지나는 직선 위에 있으면서 원 안이나 경계에 있는 격자점의 개수를 센다.
난이도

보통10점 중 7점

유형
수학, 정수론, 기하, 이분 탐색
정답자
아직 제출이 없습니다

문제

Тимон нашел много вкусных жуков под упавшим деревом и громко зовет гуляющего Пумбу на ужин.

Недалеко от Тимона и Пумбы находится искуственно высаженная роща. Деревья в этой роще растут только в точках с целыми координатами, которые лежат внутри и на границе некоторой окружности.

Пумба знает, что для того, чтобы попасть к Тимону и поужинать, ему придется перемещаться по прямой, соединяющей точки плоскости, в которых находится он и Пумба. Теперь он хочет знать, сколько деревьев из этой рощи находятся на одной прямой с ним, Тимоном и сытным ужином.

입력

В первой строке содержатся три целых числа x,y,rx, y, r (1≤r≤1091 \le r \le 10^9) --- координаты цетра и радиус окружности рощи. Во второй строке расположены четыре целых числа x_tx\_t, y_ty\_t, x_px\_p и y_py\_p --- координаты Тимона и Пумбы. Гарантируется, что ни Пумба, ни Тимон не находятся внутри рощи. Все координаты по модулю не превышают 10910^9.

출력

Выведите одно число --- количество деревьев на пути Пумбы к Тимону.

힌트

Обратите внимание на то, что Пумбу интересуют не только деревья, лежащие на отрезке между ним и Тимоном, но также и точки, лежащие вне этого отрезка, но на одной прямой с ними.

예제1

  1. 예제 1

    입력
    0 0 5
    -10 1 10 1
    
    예상 출력
    9