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

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

Спасите Землю

면접 대비

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

요약
두 원 밖의 한 점에서 출발해 각 원에 반지름 이내로 접근하는 최단 경로의 길이를 구한다. 두 원은 서로 겹치지 않는다.
난이도

보통10점 중 5점

유형
기하, 수학, 그리디
정답자
아직 제출이 없습니다

문제

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

Чтобы Морти отстал от него на пару минут, после чего Рику все же придется идти спасать мир, Рик попросил Морти найти длину кратчайшего пути, который нужно будет проделать Рику от дома, где он сейчас находится, чтобы включить обе антенны. Чтобы включить первую антенну, Рику нужно оказаться от нее на расстоянии не более r_1r\_1, а чтобы включить вторую, на расстоянии не более r_2r\_2.

Как вы могли догадаться, из дома включить ни одну из антенн не получается. А также, в силу технических ограничений, расстояние между антеннами строго больше r_1+r_2r\_1 + r\_2.

Считайте, что никаких препятствий на плоскости нет. В том числе, можно идти через то место, где находится антенна.

입력

В первой строке даны три целых числа x_1x\_1, y_1y\_1 и r_1r\_1 --- координаты первой антенны на плоскости (−106≤x_1,y_1≤106-10^6 \le x\_1, y\_1 \le 10^6, 1≤r_1≤1061 \le r\_1 \le 10^6). Во второй строке даны три целых числа x_2x\_2, y_2y\_2 и r_2r\_2 --- координаты второй антенны на плоскости (−106≤x_1,y_1≤106-10^6 \le x\_1, y\_1 \le 10^6, 1≤r_1≤1061 \le r\_1 \le 10^6). В третьей строке даны два целых числа xx и yy --- координаты дома, где сейчас находится Рик (−106≤x,y≤106-10^6 \le x, y \le 10^6).

출력

В единственной строке выведите длину кратчайшего пути, который придется проделать Рику, чтобы включить обе антенны, с абсолютной или относительной погрешностью не более 10−610^{-6}.

힌트

Рис. 1: Пояснение для первого теста

Рис. 2: Пояснение для второго теста

예제2

  1. 예제 1

    입력
    2 1 1
    3 4 1
    0 0
    
    예상 출력
    4.0000000000
    
  2. 예제 2

    입력
    0 0 2
    4 -2 1
    -2 -4
    
    예상 출력
    5.7382161910