조심스러운 상승

수직 속도가 1km/min일 때 목표 지점에 도달하도록, 수평 속도를 배율로 바꾸는 구간들을 고려해 초기 수평 속도를 구한다.

보통4수학구현시뮬레이션기하면접 대비아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

말 레이놀즈는 궁전 주변에 경찰 사이렌이 울려 퍼지는 동안 이미 도시 밖에 세워 둔 상승 장치까지 도착했다.

대사제의 허가 없이는 어떤 우주선도 자르조스 행성을 떠날 수 없다. 그런데 말의 우주선 파이어플라이는 통제 구역보다 훨씬 높은 정지 궤도에 떠 있고, 말의 작은 상승 장치는 수직 속도가 정확히 1 km/분이면 침입자로 인식되지 않는다.

문제는 두 가지다. 첫째, 말은 우주복을 입은 채로 장치를 조종하지 못하므로 지상에서 자동 조종을 미리 설정해야 한다. 수직 속도는 정확히 1 km/분이어야 하고, 수평 속도는 그 궤적이 파이어플라이에 닿도록 정해야 한다. 둘째, 행성의 에너지 방어막이 자동 조종을 방해한다. 방어막 안을 지나는 동안에는 수평 속도가 주어진 배율만큼 줄거나 늘어나고, 방어막을 벗어나면 곧바로 원래 수평 속도로 돌아온다. 이 문제에서 파이어플라이는 하나의 점으로 본다. 그림 1에 그려진 모양은 보기 좋으라고 넣은 것일 뿐이다.

그림 1: 첫 번째 예제를 나타낸 그림.

다행히 말은 내려올 때 방어막의 위치와 자동 조종에 미치는 영향을 기록해 두었다. 이제 필요한 것은 알맞은 수평 속도 설정값을 알려 주는 프로그램이다.

입력

첫째 줄에 정수 xx, yy가 주어진다 (107x107-10^7 \le x \le 10^7, xy108|x| \le y \le 10^8, 1y1 \le y). 말의 현재 위치를 기준으로 한 파이어플라이의 좌표이며, 단위는 킬로미터이다.

둘째 줄에 방어막의 개수 nn이 주어진다 (0n1000 \le n \le 100).

이어지는 nn개의 줄에 방어막 하나의 정보가 한 줄씩 주어진다. ii번째 줄에는 세 수가 있다.

  • 정수 lil_i는 방어막 ii의 아래쪽 경계이다 (0li<y0 \le l_i < y, 단위는 킬로미터).
  • 정수 uiu_i는 방어막 ii의 위쪽 경계이다 (li<uiyl_i < u_i \le y, 단위는 킬로미터).
  • 실수 fif_i는 방어막 ii를 지나는 동안 수평 속도에 곱해지는 배율이다 (0.1fi10.00.1 \le f_i \le 10.0).

방어막의 구간은 서로 겹치지 않는다. 즉, 서로 다른 두 방어막 ii, jj에 대해 uilju_i \le l_j 또는 ujliu_j \le l_i 가운데 하나가 성립한다.

모든 실수는 소수점 아래 최대 10자리까지 주어진다.

출력

말이 파이어플라이에 도달하려면 설정해야 하는 수평 속도를 km/분 단위로 한 줄에 출력한다.

답은 소수점 아래 열째 자리에서 반올림해 소수점 아래 9자리를 항상 그대로 출력한다. 값이 정확히 절반이면 절댓값이 커지는 쪽으로 올린다. 답이 음수이면 앞에 빼기 부호를 붙인다.