고양이와 쥐

고양이가 정해진 시간 안에 모든 쥐를 잡아먹을 수 있도록 하는 최소 초기 속도 v를 구한다. 한 마리를 먹을 때마다 속도에 m이 곱해진다.

어려움8이분 탐색동적 계획법비트 연산기하아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

고양이는 좌표평면 위에 살고, 집은 (0,0)(0, 0)에 있다. 이 자리에 사는 쥐는 없다.

시각 t=0t = 0에 쥐 nn마리가 서로 다른 지점에서 땅 위로 머리를 내밀고, 고양이는 쥐를 모두 본다. ii번 쥐는 자기 지점에 시각 sis_i까지 머물다가 땅속으로 숨고, 그 뒤에는 고양이가 잡을 수 없다.

고양이는 쥐를 모두 먹으려 한다. 시각 t=0t = 0에 초기 속력 vv(0,0)(0, 0)을 출발해 쥐 한 마리를 향해 직선으로 달리고, 도착하는 즉시 그 쥐를 먹은 다음 다시 다른 쥐를 향해 직선으로 달린다. 먹는 데 드는 시간은 0이며, 남은 쥐가 없을 때까지 이 과정을 반복한다.

한 마리를 먹을 때마다 속력에 상수 mm이 곱해진다. 즉 kk마리를 먹은 뒤의 속력은 vmkv m^k이다.

고양이가 ii번 쥐를 먹으려면 시각 sis_i 이전에 그 지점에 도착해야 한다. 정확히 sis_i에 도착해도 먹는다.

고양이는 가장 유리한 순서를 고른다. 모든 쥐를 먹는 순서가 존재하는 가장 작은 초기 속력 vv를 구하라.

입력

첫째 줄에 쥐의 수 nn (1n151 \le n \le 15)이 주어진다.

다음 nn개 줄에는 각각 정수 xx, yy, ss (1000x,y1000-1000 \le x, y \le 1000, 1s100001 \le s \le 10000)가 주어진다. 쥐 한 마리가 (x,y)(x, y)에 있고 시각 t=st = s에 땅속으로 숨는다는 뜻이다. 같은 지점에 있는 두 쥐는 없고, (0,0)(0, 0)에 있는 쥐도 없다.

마지막 줄에는 소수점 아래 한 자리 또는 두 자리인 소수 mm (0.75m0.990.75 \le m \le 0.99)이 주어진다. .75처럼 앞의 0을 생략한 형태로 주어지기도 한다.

출력

모든 쥐를 먹을 수 있는 최소 초기 속력을 초당 거리 단위로 출력한다. 소수점 아래 여섯 자리까지 반올림해 정확히 여섯 자리를 출력한다.