我的三角形需要更多节点
考虑标准等边三角形,其节点使用重心坐标标记: 我们可以通过添加3个顶点的新线(比原来的3节点三角形的一侧多一个),将3节点三角形变成6节点三角形,删除任何内部边缘(但不包括内部节点),然后重新标准化坐标: 重复此过程,从6个节点的三角形变为10个节点的三角形,添加一行4个顶点(同样,比原始6个节点三角形的一侧多一个),删除所有内部边缘(但不包括内部节点) )并重新标准化坐标: 此过程可以无限期重复。挑战的目标是给一个整数,N代表执行此过程的次数,并在重心坐标中输出关联三角形的所有节点。 输入值 您的程序/函数应采用一个非负整数作为输入,该整数N代表已应用此过程的次数。请注意,对于N=0,您应该输出具有3个节点的原始三角形。 输入可以来自任何来源(功能参数,标准输入输出等)。 输出量 您的程序/函数应以归一化的重心坐标输出所有节点。节点的顺序无关紧要。可以将数字指定为分数(不需要减少分数)或浮点数。您也可以输出“缩放”向量来指定节点。例如,以下所有3个输出都是等效的并被允许: 0.5,0.5,0 1/2,2/4,0 [1,1,0]/2 如果使用浮点输出,则您的输出应精确到1%以内。输出可以是所需的任何接收器(stdio,返回值,返回参数等)。请注意,即使重心坐标唯一地由每个节点2个数字确定,您也应该输出每个节点所有3个数字。 例子 示例案例的格式为: N x0,y0,z0 x1,y1,z1 x2,y2,z2 ... 其中第一行是input N,所有随后的行形成一个节点x,y,z,该节点应在输出中恰好一次。所有数字均以近似浮点数形式给出。 0 1,0,0 0,1,0 0,0,1 1 1,0,0 0,1,0 0,0,1 0.5,0,0.5 0.5,0.5,0 0,0.5,0.5 2 1,0,0 0,1,0 0,0,1 0.667,0,0.333 0.667,0.333,0 0.333,0,0.667 0.333,0.333,0.333 0.333,0.667,0 0,0.333,0.667 0,0.667,0.333 3 1,0,0 0.75,0,0.25 0.75,0.25,0 0.5,0,0.5 …