解答:一个三角形分成4块,拼接起来后少一块

马丁加德纳三角形分割问题:

把一个三角形分割成特定的4块然后重新组合,新的三角形与原来的三角形形状相同。在拼接过程中绝没有做任何手脚,然而第二个三角形看上去竟然缺少了一格的面积!

这其实是一个视觉问题,问题就出在这两个根本都不是三角形。下面做三角形边长分析,这个 问题就会显而易见。

 

边长分析

为了简单计算,我们采用数格子的方式(实际上没有格子我们也可以推导每条边占多少个格子)

由此我们看到AD=\sqrt{29}, DC=\sqrt{73}

AD+DC=5.3851648071345040312507104915403+8.5440037453175311678716483262397

            =13.92916855245203519912235881778

直线AC=13.928388277184119338467738928513

可以看到AD+DC>AC, 也就是说ADC是一条折线,并不是一条 直线。

 

直观化解答

我们暂且假设这是由一个边长为5和13的三角形分割而来,那么有:

经过简单计算发现E1M1=3.077,而E1D1=3,也就是说D1根本不在直线AC上,而是在大三角形ABC内侧。同样E2M2=1.923,E2D2=2,也就是说D2也不在直线AC上,而是在大三角形ABC外侧。

现在可以清晰直观的看到图形变换,实际上是ABCD1变换到ABCD2。后者比AD1前者多出一个四边形AD1CD2,因此变换后的图形在内侧空出一个小正方形也就不足为奇了吧。空出的小正方形面积刚好等于多出的四边形AD1CD2的面积。

 

结论

这个切割再组合,空出一个小正方形, 是因为同时它也多占据了左上角一点空间AD1CD2,由于这个图形和实际的三角形在AC边上只偏移了不到0.077( 实际垂直偏移比斜偏移更小),因此肉眼根本看不出来。假设图中的实际长度单位是厘米,那么只要AC边稍微有不到1毫米的缝隙,就可以做这个游戏。

因此最终结论是,它变换前不是一个三角形,变换后也不是一个三角形,变换后空出的小正方形的面积实际上被移到了左上角的一个扁尖的四边形AD1CD2。

 

author:蓝何忠

email:lanhezhong@163.com

一个多边形可以通过将其分割成多个三角形来表示。一个常用的方法是使用耳朵剖分算法,该算法可以将多边形分割为一系列不相交的三角形。耳朵剖分算法的基本思想是逐步移除多边形的耳朵,直到只剩下三个顶点。 耳朵剖分算法的步骤如下: 1. 找到多边形中的一个耳朵,即一个由连续的三个顶点组成的内部不包含其他任意顶点的三角形。 2. 移除耳朵中的顶点,并将剩余的多边形继续进行耳朵剖分。 3. 重复步骤1和步骤2,直到只剩下三个顶点,即形成了最后一个三角形。 通过这个算法,可以将一个多边形分割成一系列不相交的三角形。这个算法的时间复杂度为O(N^3),其中N为多边形的顶点数。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Android如何判断一个点在不在多边形区域内](https://download.csdn.net/download/weixin_38677808/14025705)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [多边形分解成三角形算法, 耳切法](https://blog.csdn.net/qq_24459491/article/details/102976671)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值