作为 Aqueous Contaminate Management 的一名员工,你必须监测倾倒(有时是意外,有时是蓄意)到河流、湖泊和海洋中的污染物。你的工作之一是测量这些污染物对水中各种生态系统(如珊瑚礁、产卵地等)的影响。
图 J.1:样例输入 1 的示意图。
你在分析中使用的模型如图 J.1 所示。海岸线(图中的水平线)位于 $x$ 轴上,污染源位于原点 $(0,0)$。污染物在水中的扩散由半圆表示,而多边形则代表所关注的生态系统。你必须确定被污染的生态系统面积,即图中深蓝色区域的面积。
输入格式
输入包含单个测试用例。测试用例的第一行包含两个整数 $n$ 和 $r$,其中 $3 \le n \le 100$ 是多边形的顶点数,$1 \le r \le 1\,000$ 是污染场的半径。接下来的 $n$ 行,每行包含两个整数 $x_i, y_i$,按逆时针顺序给出多边形的顶点坐标,其中 $-1\,500 \le x_i \le 1\,500$ 且 $0 \le y_i \le 1\,500$。该多边形不会自交或接触自身。没有顶点位于圆的边界上。
输出格式
显示多边形落在以原点为中心、半径为 $r$ 的半圆内的面积。结果的绝对误差应不超过 $10^{-3}$。
样例
样例输入 1
6 10 -8 2 8 2 8 14 0 14 0 6 -8 14
样例输出 1
101.576437872