7775: BZOJ3775:点和直线

Memory Limit:512 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

你需要实现以下3种操作: 1.       平面上加入一条直线; 2.       删除一条已加入的直线; 3.       求一个点到平面上所有直线距离平方和最小,你需要输出这个最小值。


输入格式

第1行包含一个整数N,表示了操作数目。接下来N行操作属于下列3种格式之一: 格式1: 0 x1 y1 x2 y2 。插入直线操作,插入一条过(x1, y1), (x2, y2)的直线,保证两点不重合,坐标为实数(最多两位小数)并且绝对值不超过100。 格式2: 1 k 。删除直线操作,删除第i次插入操作所插入的直线,保证已经被删除的直线不会再被删除(即任意2次操作k值均不同),并且k不大于之前插入操作的次数。 格式3: 2 。查询操作,查询所要求的最小值。


输出格式

输出行数等于查询操作的次数,每行输出每次查询操作所要求的最小值,保留两位小数


样例输入

10
0 0.0 0.0 1.0 0.0
2
0 0 1 1 1
2
0 0 2 1 2
2
1 2
2
1 3
2

样例输出

0.00
0.50
2.00
2.00
0.00

提示

对于100%的数据,N ≤ 120000。


题目来源

没有写明来源

加入题单

上一题 下一题 算法标签: