AT_1202Contest_g.Net of Net
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个三维凸多面体 P,它的展开图是指满足以下条件的平面上的多边形集合:
- 每个多边形与 P 的一个面一一对应
- 通过沿着边进行折叠操作,可以构造出 P
其中,沿着边进行折叠的操作定义如下:
- 选择一条边,使得如果移除该边,当前的图形将变为非连通的。然后,以该边为轴,在当前图形上,将该边的一侧部分整体旋转任意角度(在三维空间中)。如果需要,可以将完全相同的顶点或边等同视之。
类似地,三维凸多面体 P 的展开图的展开图是指满足以下条件的线段集合:
- 每条边与 P 的展开图的边一一对应
- 通过沿着顶点进行折叠操作,可以构造出 P 的展开图
其中,沿着顶点进行折叠的操作定义如下:
- 选择一个顶点,使得如果移除该顶点,当前的图形将变为非连通的。然后,以该顶点为中心,在当前图形上,将该顶点的特定侧部分整体旋转任意角度(在二维空间中)。如果需要,可以将完全相同的顶点等同视之。
给定一组在单位球面上的 N 个点,其中任意四个点都不在同一平面上。点 i 的坐标为(xi,yi,(−1)ci1−xi2−yi2)。
判断是否存在点集的凸包的展开图的展开图是一条路径,并计算该路径的最大长度。
输入格式
输入以以下形式从标准输入中给出。实数的小数部分最多包含6位。
$ N $ $ x_1 $ $ y_1 $ $ c_1 $ $ \vdots $ $ x_N $ $ y_N $ $ c_N $
输出格式
如果存在点集的凸包的展开图的展开图是一条路径,则输出答案。否则,输出-1。
真实答案与你的答案的绝对误差或相对误差不超过10−7时,才被认为是正确的。
约束条件
- $ 4\ \leq\ N\ \leq\ 14 $
- $ -1\leq\ x_i,y_i \leq\ 1 $
- $ c_i $ 是 $ 0 $ 或 $ 1 $
- $ x_i2+y_i2\leq\ 1 $
- 给出的任意两个点都不同
- 给出的所有不同的四个点p,q,r,s,p,q,r所在的平面与s之间的距离大于10−5
Translate by @XYQ_102
输入输出样例
输入#1
4 0.000000 0.000000 1 0.000000 0.000000 0 1.000000 0.000000 1 0.000000 1.000000 0
输出#1
13.899494936612
输入#2
6 -0.322191 -0.852465 0 -0.463288 -0.553583 1 0.378710 -0.346882 1 -0.489727 0.488028 0 -0.731142 0.227066 1 0.254757 -0.899035 0
输出#2
22.950966056549
输入#3
8 0.837078 0.492956 1 0.360579 -0.565500 0 -0.367448 -0.492394 1 0.491637 -0.658814 1 -0.505114 -0.538563 1 0.544637 0.592884 1 -0.622207 -0.379934 1 0.402129 0.684158 1
输出#3
28.879053537910
输入#4
4 0.800000 0.600000 0 1.000000 0.000000 1 -0.280000 -0.960000 1 0.000000 0.000000 0
输出#4
13.284042973728
输入解题思路,AI测评打分。不知道怎么写?