두 원형 섬 사이에 입구가 테두리에서 100cm 이상 안쪽에 있는 가장 짧은 터널을 찾아, 섬들의 도달 가능 그래프가 강연결이 되도록 만든다.
어려움8그래프기하유니온 파인드이분 탐색아직 제출이 없습니다시간 제한5초메모리 제한512 MB위네시아는 평면 위에 흩어진 섬 무리다. 섬은 모두 완전한 원 모양이고 경계선도 땅이며, 어떤 두 섬도 겹치거나 맞닿지 않는다. 몇몇 섬에는 야자나무가 수직으로 자라고 있어서, 야자나무 하나를 평면 위의 한 점과 높이로 나타낸다.
배달부는 아무 땅 지점에서 다른 아무 땅 지점으로 물건을 옮길 수 있어야 한다. 같은 섬 안에서는 언제나 자유롭게 움직인다. 배달부는 자기가 서 있는 섬에서 높이 h인 야자나무에 올라가 물건을 던질 수도 있다. 던진 물건은 그 야자나무에서 거리가 k×h 이하인 땅 지점이면 어디든, 다른 섬이라도 떨어뜨릴 수 있다. 던지려면 야자나무가 있어야 하므로 이 이동은 한쪽 방향으로만 쓴다.
던지기만으로는 모자랄 수 있으니 서로 다른 두 섬을 잇는 터널을 하나 뚫을 수 있다. 터널은 한 섬의 한 점과 다른 섬의 한 점을 잇고, 바다 밑도 사이에 놓인 섬 밑도 지나간다. 배달부는 터널을 양쪽 방향으로 오간다. 바닷물이 들어오지 않게 하려면 두 출입구가 각각 바다에서 1미터(100센티미터) 이상 떨어져야 하므로, 반지름이 r인 섬의 출입구는 그 섬 중심에서 거리 r−100 이내에 놓인다. 터널의 길이는 두 출입구 사이의 거리다.
배달 체계가 완성되게 하는 가장 짧은 터널의 길이를 구하라.
첫째 줄에 세 정수 n, m, k가 주어진다 (1≤n≤5000, 0≤m≤10000, 1≤k≤1000). 차례대로 섬의 수, 야자나무의 수, 던지는 거리와 야자나무 높이의 비율이다.
다음 n개 줄에는 섬 하나의 중심과 반지름을 센티미터 단위로 나타내는 세 정수 x, y, r가 주어진다 (∣x∣,∣y∣≤106, 100≤r≤106).
다음 m개 줄에는 야자나무 하나의 위치와 높이를 센티미터 단위로 나타내는 세 정수 x, y, h가 주어진다 (∣x∣,∣y∣≤106, 1≤h≤104).
어떤 두 섬도 교차하지 않는다. 야자나무는 모두 어느 한 섬의 내부에 엄격히 들어 있다. 같은 자리에 자란 야자나무는 없다.
터널 없이도 배달 체계가 완성되면 0.000000을 출력한다. 터널을 하나 뚫어도 완성되지 않으면 impossible을 출력한다. 그 밖의 경우에는 가장 짧은 터널의 길이를 센티미터 단위로 출력한다.
수는 소수점 아래 여섯 자리로 출력한다.