No.3675 偏光板
問題文
$xy$ 平面上に、横の長さが $X$、縦の長さが $Y$ の、軸に平行な長方形の窓があります。 窓が占める領域は $[0, X] \times [0, Y]$ です。 この窓には、単位面積あたりの光量が $1$ の一様な光が入射しています。
窓の前には $N$ 枚の円形の偏光板があります。
$i\ (1 \leq i \leq N)$ 番目の偏光板は中心 $(x_i, y_i)$、半径 $r_i$ の円板であり、偏光方向 $d_i$ は縦方向を表す V または横方向を表す H です。
偏光板は窓の領域から部分的、あるいは完全にはみ出している場合がありますが、窓の外側の領域は光量の計算対象に含めません。
窓内の各点を通過する光量は、次の規則で定義されます。
- どの偏光板にも覆われていない点では $1$
- 偏光方向が
Vである偏光板に $1$ 枚以上覆われ、かつ偏光方向がHである偏光板には覆われていない点では $1/2$ - 偏光方向が
Hである偏光板に $1$ 枚以上覆われ、かつ偏光方向がVである偏光板には覆われていない点では $1/2$ - 偏光方向が
Vである偏光板と、偏光方向がHである偏光板にそれぞれ $1$ 枚以上覆われている点では $0$
窓全体を通過する光量の総和(すなわち、各点を通過する光量を窓全体の領域で積分した値)を求めてください。
入力
入力は以下の形式で標準入力から与えられます。
$X\ Y\ N$ $x_1\ y_1\ r_1\ d_1$ $x_2\ y_2\ r_2\ d_2$ $\vdots$ $x_N\ y_N\ r_N\ d_N$
制約
- $1\leq X, Y\leq 10^6$
- $0\leq N\leq 2000$
- $-10^6\leq x_i, y_i\leq 10^6$
- $1\leq r_i\leq 10^6$
- $d_i$ は
VまたはH - 入力される数値はすべて整数
出力
窓全体を通過する光量の総和を出力し、最後に改行してください。
出力した値と基準値との絶対誤差または相対誤差が $10^{-6}$ 以下であれば正解と判定されます。
ジャッジが保持する基準値と真の値との絶対誤差は $10^{-50}$ 以下であることが保証されています。
サンプル
サンプル1
入力
10 8 2 0 4 3 V 4 4 3 H
出力
58.794249588268896
偏光板と窓の位置関係は次の図のようになります。
サンプル2
入力
10 10 1 5 5 2 V
出力
93.716814692820414
偏光板は窓内に収まっています。円板の面積 $4\pi$ の部分だけ、通過する光量が $1/2$ になります。
サンプル3
入力
12 7 0
出力
84.000000000000000
偏光板がないため、窓のすべての点で通過する光量は $1$ です。
サンプル4
入力
10 10 2 5 5 2 V 5 5 2 H
出力
87.433629385640828
2枚の偏光板が同じ位置にぴったり重なっているため、その円の内部では両方の方向の偏光板に覆われ、通過する光量は $0$ になります。
サンプル5
入力
10 10 2 5 5 2 V 5 5 2 V
出力
93.716814692820414
同じ方向の2枚の偏光板が同じ位置にぴったり重なっています。重なった部分を通過する光量は $1/2$ のままです。
サンプル6
入力
5 7 1 2 3 100 V
出力
17.500000000000000
偏光板は窓よりもずっと大きく、窓全体を覆っています。したがって、通過する光量の総和は $5 \times 7 \times 1/2 = 17.5$ です。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。
harurun