問題一覧 > 通常問題

No.3675 偏光板

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 1024 MB / 小数誤差許容問題 絶対誤差または相対誤差が $10^{-6}$ 以下。ただし、ジャッジ側の都合で500桁未満にしてください
タグ : (AC するまで非表示) / 解いたユーザー数 3
作問者 : 👑 みうね / テスター : harurun TKTYI
お気に入りにしたユーザー ProblemId : 13845 / 自分の提出
問題文最終更新日: 2026-09-03 22:49:50
yukicoder contest 512 BONSAI (順位表) の他の問題:

問題文

$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

偏光板と窓の位置関係は次の図のようになります。

サンプル1の窓と偏光板の配置

サンプル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もしくは右上の雲マークをクリックしてアカウントを作成してください。