这题的题面非常漂亮,配图甚至颇有趣味。
描述了一种可以通过磁性节点随意拼接的多面体模块,要求求出在特定数量下,整个结构两端能达到的最大直线距离。
很容易就让人误以为自己是在做一款益智玩具的拼图游戏。
白板上,尹航已经画了十二种复杂的拼接型状。
每一种构型都充满了机械美感,计算出的极端点距离列在一旁,姚思雨还在下面补了几个奇异的边界情况。
很显然,两人已经在这道题里走得很深,走得很远,并不是不会做。
问题是,走得太远,也走得太散。
象是在一片没有尽头的森林里开了十二条路,却不知道哪一条才是生路。
“我们现在最大的问题是构型太多了,如果纯靠穷举,我能枚举出一堆,但没法证明,我不知道有没有漏掉一种比现在更极端的诡异拼法。”
尹航指着白板上那些密密麻麻的图形说,语气有些烦躁。
姚思雨在旁边心有戚戚地点头:“通过刚才的计算,我其实能猜到答案大概落在哪个范围。但我的证明写得不干净,总觉得如果阅卷人挑刺,随便给出一个我没考虑到的拓扑结构,我的逻辑链就断了。”
听两人解释罢,江临站到白板面前。
先看那些复杂的构型图,再看旁边列出的距离表,最后,他的视线停留在尹航划掉的那几行试图用对称群来分类的推导上。
尹航有一条路线,是想把旋转翻折之后等价的构型先并掉,用对称性减少枚举。
方向很敏锐,但等价类并不等于上界。
它只能减少要看的图,不能告诉你最远的端点一定在哪里。
姚思雨走的另一条路线,是按模块之间的连接面面积来分类。
也没有错。
但分类一多,证明过程就会变成一个充斥着无数分类讨论的泥潭,结果是自己也被绕进去了。
江临从白板槽里拿起一根蓝色的马克笔,在白板最上方的一大块空白处,写了两个字。
上界。
尹航皱了皱眉。
因为在他看来,这显然是一句废话。
“我们当然知道要求上界,问题是这个上界你怎么抓,你怎么能保证一个统一的公式能罩住所有乱七八糟的拼法?”
江临转过头,看着尹航,平静地说道:“你不知道怎么抓,是因为你们从一开始,就把这道题当成空间拼图在看。”
此话一出,姚思雨猛地抬头,盯着江临。
江临用手里的蓝色马克笔在白板上点了几个点,然后用线将它们连起来。
“几何不能丢。”他说,“但不能一开始就被几何图形牵着走。先把每个模块允许的连接位姿,压成有限几种有效位移,再把模块之间的连接关系抽成图。”
说着,他在其中一条路径上画了一个箭头。
“真正要抓的是任意合法拼接里,两个端点之间的欧氏距离,最多能从这些连接路径里榨出多少。”
尹航皱眉:“所以不是枚举型状,而是先证明任何构型都不可能超过某条简单链的展开长度?”
“对。”江临点头,“图给出路径结构,几何约束给出每一步最多能贡献的距离。两者合在一起,才是上界。”
姚思雨盯着那条链状结构,顺着说道:“如果上界被这条链卡死,那我们只需要再构造一个具体拼法,证明它刚好能达到这个上界。”
“对。”
江临在链的旁边画出一个近似拉直到极限的极端构型。
图画得瑞安潦草,但关键端点、连接面和相对朝向交代得一清二楚。
“先用连接图和几何约束证明上界,再用极端构型给出取等构造。一拉一推,这题就闭合了。”
“等一下。”
尹航皱着眉头走近白板,用黑色马克笔在江临的构型旁边补了一条旋转虚线。
“这里如果沿这条轴转一次,会不会利用空间对角线让端点更远?”
江临扫了一眼,摇头说:“不会。”
“为什么?”
“因为这一步旋转只改变方向,不增加有效位移的模长。端点距离的投影已经被前面的连接约束卡住了。你能换坐标系里的朝向,但不能凭空增加那一节贡献的长度。”
尹航还是有些心有不甘,又指向原来的海星状构型,说:“那这种非链状分支呢,两个分支端点之间会不会更长?”
“分支端点之间的距离,必须经过公共连接节点分解。。关键是取等条件。在这道题的连接约束下,两条分支不能同时沿同一直线完全展开。你拉直一条,另一条的有效投影就会被折掉。”
江临用笔在公共连接节点上点了两下。
“所以分支结构最多逼近同