One

Time Limit : 1 sec, Memory Limit : 65536 KB

One

Problem Statement

電車の窓から美しい山並みが見える.
窓は,左下隅の座標が (0, 0),右上隅の座標が (W, H) の長方形である.
窓からは N つの山が見えており,i 番目の山は上に凸な放物線 y = a_i (x-p_i)^2 + q_i の形をしている.
山と空との境界線の長さを求めよ.

次の三つの図は Sample Input に対応している.太線で示されている部分が山と空との境界線である.

Input

入力は以下の形式に従う.与えられる数は全て整数である.

W H N
a_1 p_1 q_1
...
a_N p_N q_N

Constraints

  • 1 ≦ W, H ≦ 100
  • 1 ≦ N ≦ 50
  • -100 ≦ a_i ≦ -1
  • 0 ≦ p_i ≦ W
  • 1 ≦ q_i ≦ H
  • i \neq j ならば (a_i, p_i, q_i) \neq (a_j, p_j, q_j)

Output

山と空との境界線の長さを 1 行に出力せよ.
出力する値は,真の値との絶対誤差または相対誤差が 10^{-6} 未満でなければならない.

Sample Input 1

20 20 1
-1 10 10

Output for the Sample Input 1

21.520346288593280

Sample Input 2

20 20 2
-1 10 10
-2 10 5

Output for the Sample Input 2

21.520346288593280

Sample Input 3

15 100 2
-2 5 100
-2 10 100

Output for the Sample Input 3

126.921542730127873

Source: Ritsumeikan University Competitive Programming Camp 2013, Day2 , Problem set from Osaka University teams, Shiga, Japan, 2013-03-12
Problem Setter:  fura2