#P16638. [Ukiepc2019]Knocked Ink

[Ukiepc2019]Knocked Ink

题目描述

你不小心打翻了队伍钢笔使用的墨水瓶。纸面上开始出现墨点,并不断向外扩散,这会严重影响你书写程序设计竞赛题解的速度。

墨水会在纸面上形成初始半径无限小的墨点。一个墨点在事故发生后的第 tt 秒出现,此后其半径以每秒 11 厘米的速度连续增大,并且可能与其他墨点发生重叠。

起初纸张仍然可以使用;但当所有墨点覆盖区域的并集面积增大到给定值时,你就必须放弃这张纸,换一张纸继续工作。

需要经过多长时间才会发生这种情况?

样例 1 的墨点覆盖情况

输入格式

输入包含:

  • 第一行包含一个整数 nn 和一个实数 aa1n1001\le n\le 1001a1091\le a\le 10^9),分别表示墨点数量,以及必须放弃纸张时墨水覆盖区域的总面积,单位为平方厘米。
  • 接下来 nn 行,每行包含三个实数 x,y,tx,y,t
    • (x,y)(x,y) 是该墨点在纸面上的坐标,满足 106x,y106-10^6\le x,y\le 10^6
    • tt 是该墨点首次出现的时刻,满足 0t1060\le t\le 10^6

输出格式

输出墨点在无限大纸面上覆盖的并集面积恰好达到 aa 平方厘米时的时间,单位为秒。

答案的绝对误差或相对误差不得超过 10610^{-6}

样例 1

输入:
4 20.566371
0.0 0.0 0.0
0.0 2.0 0.0
2.0 0.0 0.0
2.0 2.0 0.0

输出:
1.4142135624

样例 2

输入:
2 785.398163397
-50 0 20
50 0 30

输出:
35

样例 3

输入:
5 10000
0 0 0
0 0 1
0 0 2
10 0 1
0 -5 2

输出:
53.3322048