【转载】直线分平面

2024-08-28 07:32
文章标签 转载 直线 平面

本文主要是介绍【转载】直线分平面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

路路分蛋糕问题

蛋糕终于是买回来了,路路的朋友们已经迫不及待来吃蛋糕了。为了公平起见,每个人都将分到一块蛋糕。可是路路是一个很懒的家伙,他想用最少的刀数分出他想要的蛋糕块数,不论大小和形状。下面请开动你的脑筋告诉这个懒家伙该怎么做,蛋糕切法按照常理理解。

从题目中提供的条件来看,蛋糕按照常理可以抽象为一个圆形(平面图形),而切开的印痕可以抽象为一条直线,所以这个问题需要研究平面内的n条直线所能分割出平面的块数

 

平面的直线分割

这个问题的核心就是研究直线数n和分得块数Sn之间的关系。

首先我们看一些简单的例子:

这里的八幅图简单阐释了在直线数n最小的情况下,分得块数的情况。

进行深入研究发现,在直线数一定的情况下,要取得更多的块数,必须将直线尽可能两两相交,而避免多条直线相交于一点和平行关系的出现。

当平面中有k条直线时,加入一条新的直线,那么最多可以添加出k个新块。(参考资料)

上述理论很容易推导出来:新添加的直线要尽可能多的和已有直线产生交点,才能使得分得的块数尽量的多。同时新产生的交点不能和已有交点重合,也就是尽量保证直线都是两两相交的状态,这样才能做到分得的块数尽量的多。至多产生k个交点,分得块数至多产生k块。

当没有直线时,平面块数记为1。一直保持用最少的刀数得到最多的块数,得到如下表格:

块数123456789101112
刀数012233344445

 

根据这个表格不难得到这道题的解题要领,但下面我们要讨论的是直线分割平面中直线数和平面块数之间的关系。

 

进一步讨论直线数和平面块数的关系

当没有任何直线时,平面块数记为1。使用->表示直线数和能够产生最多的平面块数的关系:

0 –> 1
1 –> 2
2 –> 4
3 –> 7
4 –> 11

我们对上述平面块数做一个分解:

0 –> 1  = 1
1 –> 2  = 1 + 1
2 –> 4  = 1 + 1 +2
3 –> 7  = 1 + 1 + 2 + 3
4 –> 11 = 1 + 1 + 2 + 3 + 4

为什么会得到这样的分解呢?

直线数为0时,平面分割的最多块数为1;
直线数为1时,原有直线数为0,添加第一条直线后,增加1块,最多块数为1 + 1 = 2;
直线数为2时,原有直线数为1,添加第二条直线后,增加2块,最多块数为1 + 1 + 2 = 4;
直线数为3时,原有直线数为2,添加第三条直线后,增加3块,最多块数为1 + 1 + 2 + 3 = 7;
直线数为4时,原有直线数为3,添加第四条直线后,增加4块,最多块数为1 + 1 + 2 + 3 + 4 = 11;

以此类推,得到最多块数与直线数的关系式为:

Sn = 1 + (1 + 2 + 3 + … + n)  (n为直线数)

使用等差数列求和公式将括号内部分化简得:

Sn = 1+ n(n + 1) / 2

这就是直线平分平面,所得最多块数的公式,也是本题的解题关键。用程序实现这个公式,根据Sn反推n即可。

注意:每增加一个交点,可以多出一个平面!!

最后总结出来的规律就是,当前有n条直线,每增加一条直线,可以多出来n个交点,而多出来n个交点对应到可以多出n+1个平面

http://blog.chinaunix.net/uid-20761674-id-2981437.html

交点尽量多~


这篇关于【转载】直线分平面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1114123

相关文章

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p

求空间直线与平面的交点

若直线不与平面平行,将存在交点。如下图所示,已知直线L过点m(m1,m2,m3),且方向向量为VL(v1,v2,v3),平面P过点n(n1,n2,n3),且法线方向向量为VP(vp1,vp2,vp3),求得直线与平面的交点O的坐标(x,y,z): 将直线方程写成参数方程形式,即有: x = m1+ v1 * t y = m2+ v2 * t

提问的智慧(转载)

此文让我受益良多。值得一读,大家如果也觉得不错就一起来推~~~   ---------------------------------      在黑客世界里,当提出一个技术问题时,你能得到怎样的回答?这取决于挖出答案的难度,同样取决于你提问的方法。本指南旨在帮助你提高发问技巧,以获取你最想要的答案。       首先你必须明白,黑客们只偏爱艰巨的任务,或者能激发他们

高斯平面直角坐标讲解,以及地理坐标转换高斯平面直角坐标

高斯平面直角坐标系(Gauss-Krüger 坐标系)是基于 高斯-克吕格投影 的一种常见的平面坐标系统,主要用于地理信息系统 (GIS)、测绘和工程等领域。该坐标系将地球表面的经纬度(地理坐标)通过一种投影方式转换为平面直角坐标,以便在二维平面中进行距离、面积和角度的计算。 一 投影原理 高斯平面直角坐标系使用的是 高斯-克吕格投影(Gauss-Krüger Projection),这是 横

Struts2常用标签总结--转载

Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性。实现了更好的代码复用。Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求。 Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于

【转载】ACM感悟

今天看了一篇我们学校前辈的ACM的感悟,觉得写的十分有道理,这里转载,文章还会不断的改进和更新。 原文链接:http://www.cnblogs.com/Chierush/p/3760870.html?ADUIN=1339764596&ADSESSION=1401536826&ADTAG=CLIENT.QQ.5329_.0&ADPUBNO=26349 声明:本文是写给弱校ACM新手的一点

n条直线最多能划分出多少个平面?

N条直线,两两相交,其交点各不不同,则产生的交点数目为N个数中取2个数的组合; 同时,也只有这种情况下(两两相交,也交点不同),分割的平面数最多, 数目为: 2 + (N-1)(N+2)/2.  这里求最少平面数没有意义,因为最少平面数就是N+1, 即N条直线两两平行的时候,分割的平面最少。 举例: 1条直线分割平面数最多为2; a1 = 2 2条直线分割平面数最多为4;

【机械手控制】基于matlab 4-RPR平面机械手的可操作性、工作空间分析和路径跟踪【含Matlab源码 7422期】

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信或扫描文章底部QQ二维码。 🍎个人主页:Matlab凤凰涅槃 🏆代码获取方式:扫描文章底部QQ二维码 ⛳️座右铭:行百里者,半于九十。 更多Matlab路径规划仿真内容点击👇 ①Matlab路径规划(凤凰涅槃版) ⛳️关注微信公众号Matlab王者助手或Matlab海神之光,更多资源等你来!!

转载 SPI的比喻理解

SPI 传输是一个虚拟的移位寄存器方式。 你这么理解就可以: 主机和从机之间有一条 16 格的传送带。主机一格一格拨动它转动(相当于发送时钟)。 如果是主机发送,它就把一个个的东西放在传送带上,转动 8 次,就传到从机一侧了。这时,从机可以从传送带上将东西取下。如果从机没有取东西,这些东西再转 8 次又回到主机一侧。 如果是主机接收,从机就要把 8 个东西一次放上传送带。当主机转动 8 次,东西就

转载:从小白鼠试毒问题-海明码

问题提出: 有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少要多少只小白鼠才能在24小时时鉴别出哪瓶水有毒? 问题分析: 需要多少只小白鼠?这个很容易想到是10只(二进制),但是如何鉴别哪一瓶水有毒?(即如何安排小白鼠?)原贴如下:https://blog.csdn.net/mengtnt/article/details/8477747 海明码计算: 转载