#loj5518. 「PA 2019 Final」Zaczarowany Ołówek

「PA 2019 Final」Zaczarowany Ołówek

[AdditionalFile5518.zip](file://AdditionalFile5518.zip?type=additional_file)

#5518. 「PA 2019 Final」Zaczarowany Ołówek

标签: 传统 | 时间限制: 4000 ms | 内存限制: 256 MiB |

题目描述

题目译自 PA 2019 Final Zaczarowany Ołówek

今年算法竞赛的组织者显然已经没有新颖任务的灵感了,但决赛还是得准备。不过别担心!Piotrek 带着他的魔法铅笔来帮忙了。

Piotrek 将在平面上依次绘制 nn 个三角形——也就是说,他会用魔法铅笔沿着每个三角形的周界描画。魔法铅笔表面上看起来画画很普通,但它的特别之处在于,如果它第二次经过纸上的某个点,那个点就会消失,就好像从未被画过一样。当然,如果第三次经过该点,它会再次出现,第四次又会消失,以此类推。

为什么要这么麻烦?正如我们所说,必须给你们出个任务。请计算最终图形的周长,即 Piotrek 画完后,纸上所有可见线段的长度的总和。

输入格式

输入数据的第一行包含一个整数 nn (1n100000)(1 \leq n \leq 100000),表示三角形的数量。

接下来的 nn 行描述三角形。第 ii 行包含六个整数 x1,y1,x2,y2,x3,y3x_{1}, y_{1}, x_{2}, y_{2}, x_{3}, y_{3},表示第 ii 个三角形的三个顶点坐标为 (x1,y1)(x_{1}, y_{1})(x2,y2)(x_{2}, y_{2})(x3,y3)(x_{3}, y_{3})。每个三角形都是非退化的,即其顶点不共线。所有点的坐标均在范围 [106,106][-10^{6}, 10^{6}] 内。

输出格式

输出应包含一个实数,表示纸上可见线段的总长度。答案的相对误差或绝对误差不超过 10610^{-6} 即可通过。

样例 1

输入

2
1 1 3 1 2 3
3 3 4 1 2 1

输出

10.9442719100

样例 2

输入

2
0 1 2 1 1 2
1 1 2 0 3 1

输出

7.6568542495

数据范围与提示

在第一个测试中,结果为 2+4510.944271909999162 + 4 \sqrt{5} \approx 10.94427190999916;在第二个测试中,结果为 2+427.6568542494923812 + 4 \sqrt{2} \approx 7.656854249492381。两者均在下方图示中展示。