选区划分 (数模论文)
- 格式:doc
- 大小:433.79 KB
- 文档页数:26
第八届大学生数学建模竞赛()主办:东南大学教务处承办:东南大学数学系东南大学数学建模竞赛组委会论文题目:扫地机器人的路径优化参赛队员信息:扫地机器人的路径优化【摘要】本文将扫地机在区域中的路径抽象为栅格化模型,并采用线性规划的方法计算估计扫地机扫过的单元格数。
建立可随机0-4赋值或是给定参数的垃圾指标矩阵Q[60*50]作为数据基库,根据扫地机不同的性能运用循环嵌套、线性规划等方法综合求解,最终方案通过matlab运行并进行可视化演示。
实验的结果通过规划清扫路径示意图以及清扫结束后的垃圾指标矩阵E[60*50]观察分析。
关于判断扫地机何时停止工作,题设要求尽量保证每个点的垃圾指标不超过1,而碍于扫地机形状的限制,一般不能100%的清扫指定区域(如墙角部分),故我们规定计算清扫完95%以上的范围为结束工作的条件。
我们将我们的工作根据三个问题以及一个比较分析分为四部分考虑。
➢问题一我们经过合理地分析过程将整个清扫区域划分成如图1.2所示的小区域。
通过矩阵整合函数,将矩阵Q[60*50]整合成一维数组T[4],每次等时间间隔扫描判断出{}max (1),(2),(3),(4)T T T T 所对应的区域,并在该区域中的特有边界上随机取坐标作为扫地机在该区域直线行驶的途经点。
若判断到T 中最大的元素所对应的区域发生改变,则扫地机将以当前或是下一个碰撞点为起点、随机选取{}max (1),(2),(3),(4)T T T T 区域中的特有边界上的坐标作为终点做一条区域转移路径。
未到下一次扫描时间则不断在该区域的特有边界上取随机点作为途经点做直线清扫工作。
上述过程执行至扫描得到的最大垃圾总指标区域发生变化或是达到扫地机工作结束条件为止。
➢问题二已知扫地机只走直线,每次选择清扫垃圾总指标最多的路径,每次碰到墙壁转弯。
又因为智能扫地机具O ,➢➢与问题2,1 2 3 4 5 66.2 间隔扫描时间的确定 6.3模型I 的分析与建立6.3.1 对于扫描发生在扫地机工作在整个区域内(在或不在边界上)的情况 6.3.2 对于扫描未发生,而扫地机到达墙壁(在边界点上)的情况 6.4 运算思路框图 6.5 运算结果与分析7 实时扫描模型(问题二)--------------------------------------------------------------------12 7.1 区域的简单划分7.2 时刻扫描的抽象处理方法 7.3 模型II 的分析与建立 7.3.1 优化路径选取7.3.2 最优化路径选取7.4 运算思路框图7.5 运算结果与分析8 实时扫描折线模型(问题三)--------------------------------------------------------------158.1 区域的划分8.2 间隔扫描时间的确定8.3 模型III的分析与建立8.3.1 最优路径选取8.3.2 扫地机清扫区域栅格化8.4 运算思路框图8.5 运算结果与分析9 模型I与模型II的比较----------------------------------------------------------------------1810 模型的优缺点---------------------------------------------------------------------------------1910.1 优点10.2 缺点参考文献--------------------------------------------------------------------------------------------20附录1 问题重述随着科学技术的不断发展,扫地机逐步走入平常百姓家,并被越来越多的人所接受,扫地机(也称扫地机器人)将在不久的将来像白色家电一样成为每个家庭必不可少的清洁帮手。
数学建模划分方法说实话数学建模划分方法这事,我一开始也是瞎摸索。
我试过好多办法,走了不少弯路,今天就跟你唠唠我的这些经历。
我开始的时候,就知道一个劲地找数据找规律,完全没有什么明确的划分思路。
比如说我有一组关于城市交通流量的数据,想要做个建模的划分。
我当时就只知道根据时间来划分,什么早高峰晚高峰这种。
可这哪儿够啊,这个划分出来的结果超级粗糙,根本就没法很好地用于之后的建模。
这就是我犯的一个错误,只看到了表面的东西,没有深入去想其他的划分因素。
后来我就想到啊,是不是可以把地理位置也加进来呢。
就好比是把城市按照区域划分,像是商业区、住宅区、工业区这些。
我寻思着这样划分的话,不同区域的交通流量肯定有自己的特点对吧。
但这中间又出问题了,怎么确定这些区域的边界呢,这可把我给难住了。
我那时候就拿着地图在那画呢,结果发现按照地图来划太死板了,实际情况要复杂得多。
我又经过多次尝试,发现有时候要采用一些多因素综合的方法来进行划分。
就像我后来处理一个关于植物生长和环境关系的数学建模数据。
我知道不能只看温度或者只看降水量,得把这些因素统统考虑进去。
我就根据土壤类型、平均温度、降水量、日照时间这些因素,想象着自己给这些植物建立不同的居住“小房子”。
每个“小房子”里面就是一组具有相似特征的环境条件。
我先把每个因素进行分级,比如说温度按照高低分几个等级,然后再把这些等级组合。
可是这里面就有个不确定的地方,这些个因素的权重怎么确定呢。
我开始就是瞎给权重,结果出的结果就很不合理。
我才发现这一定要有科学依据,得通过专业知识或者参考一些已经有的案例研究来确定。
我还试过聚类的方法。
这就好比是把一群有着相似特点的东西聚到一块儿。
我用这个方法做一些种群增长和分布关系的建模划分的时候,开始用错了距离公式,导致聚类结果完全乱套。
那时候我才知道,这些小细节都超级重要,选择合适的距离公式,比如欧式距离、曼哈顿距离啥的,得出的结果会天差地别。
而且聚类的个数也不是随便确定的,要根据实际的建模需求和数据分布来。
第三章英國的選區劃分英國國會的組成與運作被視為現今代議政治的典範之一,英國國會的產生以及發展,也帶出代議理論與選區問題相互間的關係。
本章將藉由介紹英國的選區劃分歷史,探索其價值取捨以及背後代表觀念的演進狀況。
第一節歷史沿革做為一個單一制的國家,英國的構成並不單純,今日的英國,其組成單位有英格蘭、蘇格蘭、威爾斯與北愛爾蘭四個地區,不過這四個地區並非一開始就屬於同一個國家,而是在不同的時間逐漸合併。
西元前六百年左右,塞爾特人(Celts)居住在今天英格蘭一帶,而後有不列顛人到來(Britons),西元前五十四年羅馬入侵,將英格蘭設置為羅馬帝國的一個省。
羅馬人統治四百年後,勢力逐漸撤出,許多民族如日耳曼(German)、安格魯(Angles)、薩克森(Saxsons)等等先後渡海進入英國,成立了許多小王國,相互征戰多年,最後由威塞克斯國(Wessex)國王愛格伯(King Egbert)於西元八九二年統一英格蘭全境,建立了英格蘭王國。
英格蘭王國是以安格魯-薩克森民族(Anglo-Saxon)為主幹,並成為現代英國文化的創立者。
然而嚴格來說,這時的英格蘭王國型態還不能算是君主制。
到了一0六六年,法蘭西的諾曼地公爵登基為威廉一世,正式成為英國君主體制的開始(羅孟浩,1968;黃琛瑜,2001)。
而後威爾斯、蘇格蘭與愛爾蘭等地區陸續加入聯合王國,這些地區加入聯合王國的過程中,也透過各自的合併法案訂定各地區在國會中的議席數量。
另一方面,一二一五年約翰王(King John)與貴族簽訂大憲章(Magna Carta)後,承認貴族享有特權,讓每個貴族都有權參加國會。
到了一二五四年每個郡(county)以及自治市鎮(borough)都可以派兩名代表參加國會,這些代表除了讓君主的要求得以合理化之外,也反應各地區的需求(Rossiter et. al, 1999: 8-9)。
對此我們可以知道英國國會的起源,剛開始並沒有決定政策的權力,而是由於君主對於徵兵以及徵稅的需求增加,為了合法化這些需求所成立的機構。
欧阳道创编 2021.03.06 欧阳道创编 2021.03.06 选址问题数学模型
时间:2021.03.06 创作:欧阳道 摘要 本题是用图论与算法结合的数学模型,来解决居民各社区生活中存在三个的问题:合理的建立3个煤气缴费站的问题;如何建立合理的派出所;市领导人巡视路线最佳安排方案的问题。通过对原型进行初步分析,分清各个要素及求解目标,理出它们之间的联系.在用图论模型描述研究对象时,为了突出与求解目标息息相关的要素,降低思考的复杂度。对客观事物进行抽象、化简,并用图来描述事物特征及内在联系的过程.建立图论模型是为了简化问题,突出要点,以便更深入地研究问题 针对问题1:01规划的穷举法模型。该模型首先采用改善的FloydWarshall算法计算出城市间最短路径矩阵见附录表一;然后,用01规划的穷举法获得模型目标函数的最优解,其煤气缴费站设置点分别在Q、W、M社区,各社区居民缴费区域见表71,居民与最近的缴费点之间平均距离的最小值11.7118百米。 针对问题2:为避免资源的浪费,且满足条件,建立了以最少分组数为目标函数的单目标最优化模型,用问题一中最短路径的Floyd算法,运用LINGO软件编程计算,得到个社区之间的最短距离,再经过计算可得到本问的派出所管辖范围是2.5千米。最后采用就近归组的搜索方法,逐步优化,最终得到最少需要设置3个派出所,其所在位置有三种方案,分别是:(1)K区,W区,D区;(2)K区,W区,R区;(3)K区,W区,Q区。最后根据效率和公平性和工作负荷考虑考虑,其第三种方案为最佳方案,故选择K区,W区,Q区,其各自管辖区域路线图如图81。 欧阳道创编 2021.03.06 欧阳道创编 2021.03.06 针对问题3:建立了双目标最优化模型。首先将问题三转化为三个售货员的最佳旅行售货员问题,得到以总路程最短和路程均衡度最小的目标函数,采用最短路径Floyd算法,并用MATLAB和LINGO软件编程计算,得到最优树图,然后按每块近似有相等总路程的标准将最优树分成三块,最后根据最小环路定理,得到三组巡视路程分别为11.8km、11km和12.5km,三组巡视的总路程达到35.3km,路程均衡度为12%,具体巡视路线安排见表91和图9.2 。 关键词 FloydWarshall算法 穷举法 最小生成树 最短路
数模论文的撰写方法论文写出来后,小组内其他成员必须参与论文的检查和修改工作,这一方面是因为每个成员可以检查一下自己的工作是否都被准确地表达出来了,另一方面因为习惯性思维主笔人一般不容易检查出自己的错误。
数模竞赛章程规定,对论文的评价应以“假设的合理性、建模的创造性、结果的正确性和文字表述的清晰性”为主要标准。
所以,在论文中应努力反映出这些特点。
1、题目:论文题目是一篇论文给出的涉及论文范围及水平的第一个重要信息。
要求简短精炼、高度概括、准确得体、恰如其分。
既要准确表达论文内容,恰当反映所研究的范围和深度,又要尽可能概括、精炼。
2、摘要:摘要是论文内容不加注释和评论的简短陈述,其作用是使读者不阅读论文全文即能获得必要的信息。
在数模论文中,摘要是非常重要的一部分。
数模论文摘要应包含以下内容:所研究的实际问题,建立的模型、求解模型的方法、获得的基本结果以及对模型的检验或推广。
论文摘要需要用概括、简练的语言反映这些内容,尤其要突出论文的优点,如巧妙的建模方法、快速有效的算法、合理的推广等。
一般科技论文的摘要要求不列举例证,不出现图、表和数学公式,不自我评价,且字数应在200以内。
前几年,数模国赛要求摘要字数在300以内。
但从01年开始,为了提高论文评选效率,要求将论文第一页全用作摘要,对字数已无明确限制,故在摘要中也可适当出现反映结果的图、表和数学公式。
3、问题重述:数模比赛要求解决给定的问题,所以论文中应叙述给定问题。
撰写这部分内容时,不要照抄原题,应把握住问题的实质,再用较精练的语言叙述问题。
4、模型假设:建模时,要根据问题的特征和建模的目的,抓住问题的本质,忽略次要因素,对问题进行必要的简化,做出一些合理的假设。
模型假设部分要求用精练、准确的语言列出问题中所给出的假设以及为了解决问题所做的必要、合理的假设。
假设做的不合理或太简单,会导致错误的或无用的模型;假设做得过分详尽,试图把复杂对象的众多因素都考虑进去,会使工作很难或无法继续下去,因此常常需要在合理与简化之间作出恰当的折中。
Haozl觉得数学建模论文格式这么样设置时间:2021.03.08 创作:欧阳与版权归郝竹林所有,材料仅学习参考版权:郝竹林备注☆※§等等字符都可以作为问题重述左边的。
一级标题所有段落一级标题设置成段落前后间距13磅二级标题设置成段落间距前0.5行后0.25行图和表的标题采用插入题注方式题注样式在样式表中设置居中五号字体Excel中画出的折线表字体采用默认格式宋体正文10号图标题在图上方段落间距前0.25行后0行表标题在表下方段落间距前0行后0.25行行距均使用单倍行距所有段落均把4个勾去掉注意Excel表格插入到word的方式在Excel中复制后,粘贴,word2010粘贴选用使用目标主题嵌入当前Dsffaf所有软件名字第一个字母大写比如Excel所有公式和字母均使用MathType编写公式编号采用MathType编号格式自己定义公式编号在右边显示农业化肥公司的生产与销售优化方案摘要要求总分总本文针对储油罐的变位识别与罐容表标定的计算方法问题,运用二重积分法和最小二乘法建立了储油罐的变位识别与罐容表标定的计算模型,分别对三种不同变位情况推导出的油位计所测油位高度与实际罐容量的数学模型,运用matlab 软件编程得出合理的结论,最终对模型的结果做出了误差分析。
针对问题一要求依据图4及附表1建立积分数学模型研究罐体变位后对罐容表的影响,并给出罐体变位后油位高度间隔为1cm 的罐容表标定值。
我们作图分析出实验储油罐出现纵向倾斜 14.时存在三种不同的可能情况,即储油罐中储油量较少、储油量一般、储油量较多的情况。
针对于每种情况我们都利用了高等数学求容积的知识,以倾斜变位后油位计所测实际油位高度为积分变量,进行两次积分运算,运用MATLAB 软件推导出了所测油位高度与实际罐容量的关系式。
并且给出了罐体倾斜变位后油位高度间隔为1cm 的罐容标定值(见表1),最后我们对倾斜变位前后的罐容标定值残差进行分析,得到样本方差为4103878.2-⨯,这充分说明残差波动不大。
装订线摘要对于本题,我们详细分析了与C919市场前景和价格有关的因素,并对当今航空业市场进行了海量的调研了解,最终我们确定该问题的切入点及主要考虑方向应该是飞机的技术数据。
因为市场因素的数目和不确定性十分巨大,这样庞大的调研工作对于我们来说几乎不可能完成。
所以我们决定只对市场因素进行定性分析,避开市场因素的定量分析所带来误差,只以性能指标为基本数据进行建模。
问题一中我们使用C-D生产函数建立在中国航空业市场背景下的飞机“投入-产出”模型,并在同等产出的情况下将投资C919的投入和投资B737-800的投入进行比较,最终得出结论。
对于问题二,针对问题中要求的对价格的预测,鉴于样本数较少,各个自变量之间的相互影响较大的现实情况,我们给出了利用偏最小二乘法线性回归对数据进行数据拟合的计算方法。
在采用这种方法时我们给出了两种方案,即对各个变量直接进行线性拟合和对变量进行对数线性拟合方法。
我们使用Excel软件进行了多次回归计算,得出了各个变量对价格的贡献率,并在剔除了不重要变量后对剩余变量继续进行了线性回归计算。
最后在对两种方法进行对比之后我们得出了对数线性回归的模型是更加准确的模型的结论。
而在问题三中,我们使用题目二中所建模型进行计算分析,得出结果误差分别为0.6%和4%,预测结果较为精确。
关键字:C919 C-D生产函数多元线性回归偏最小二乘法一、问题的重述近日,中国商用飞机公司销售经理陈进接受中国官方《China Daily》采访时说:“国产大飞机与同类机型相比具有非常明显的竞争优势。
”他说,在燃油消耗方面中国C919将比目前所有机型减少12-15%(燃油在飞机市场竞争中是一个非常要的因素)。
最具有杀伤力的是中国大飞机上市时定价将会非常便宜,会大大低于波音和空客同类产品的定价。
他透露说,C919上市时定价会低于5000万美元/架!在放手开发研制一种新飞机时,除了技术细节外,还有很多经济问题需要回答。
数学建模论文
组员:
学院:信息与安全工程 班级:电商1102
选区划分
摘要 题目以现实中的竞选问题为背景,建立相应的数学模型进行分析求解。对于此问题,我们将问题的解决过程分为四个步骤。运用数学中的图论模型,建立相应的街区相邻矩阵模型,主要采用编写程序的方法来得到结果。我们的数学模型的解决主要建立在C语言的基础之上,数学模型和程序算法相结合来求解。主要的算法是堆栈,运行环境我们选择的是Visual C++。对于题目中的得到绝对多数的选票,我们以得到该选区总票数半数以上为标准。
第一步:划分过程,将14个选区进行划分,初步的划分要满足题目中的划分条件。划分后得到相应的划分方案。 第二步:得到划分结果后,由题目给出的每个街区的总人数,以及可能投票给Mevo的选民数。在此基础上对每个划分方案进行计算,得到在该划分方案的基础上,Mevo得到该选区选票是否超过半数。过半记为1,不过半记为0; 第三步:组合过程,对第一步得到的划分结果再次进行筛选组合,如果组合起来刚好是14个街区,说明这些组合是合理的。并得到多个组合方案,每个组合方案都刚好包含14个街区。 第四步:根据第二步的得票可能对应第三步的组合结果,使得所有划分中Mevo得到票数最多。
由以上四步,得到总票数最多的划分方案即为所求结果。
关键字:竞选,堆栈,总票数,图论模型,邻接矩阵,C语言。
1.问题重述 在—个遥远的国家,Sark Mevo 所领导的政党最终击败了Reguel Tekris王子领导的联合党派。Mevo希望巩固他在首都地区的席位。首都由14个街区组成,这些街区将分组为多个选区。下图是首都地区的示意图。在图中用数字1到14对这些街区进行了编号。每个街区中的另外两个数字是预计该街区会投票给Mevo的选民数和该街区的选民总数。所有选民都必须投票,且选举胜出方必须得到绝对多数选票。一个选区可以由多个相邻的街区组成,且选区内总选民数应在30,000到100,000之间。如果两个街区不相邻,例如12和13,则它们不能组成一个选区。如果某个街区选民人数不少于50,000,则允许此街区单独作为一个选区。但是由于Mevo本人就居住在街区10内,因此迫于舆论压力,他不能将这个街区单独作为一个选区。 请设计出一个将首都划分为5个选区的方案,以使Mevo得到的席位数最多。如果这样做有困难,可以尝试划分为6个选区。
首都地段示意图:
2.问题假设 1.投票结果和预计相符合,即Mevo可以得到预计的选票数目。 2.每个选民均必须投票,且不存在弃权或选择两个候选人的选票,没有弃权情况,所有票数均真实有效。 3.不考虑迁入迁出。 4.各街区内支持Mevo的选民数在讨论问题期间是恒定不变的。 5.选区内票数过半即为获得该选区席位。
3.符号说明
选区编号1a,2a...ia...6a, 得到席位记ia=1,失去席位记ia=0; Sum=60iia,最大为6,最小为0。 m:所有的划分方案。 a[14]:街区数组,初值全部为0,如果在相应划分中出现,则将相应序号置为1.
4.问题分析 1.根据题目给出的图,我们可以得到的初步数据,各个街区的总人数,每个街区可能给Mevo投票的人数。总选民数一共540000人,但是由于题目中要求选民数要在30000到100000之间,即使是平均下来每个选区人数也将超过100000,这样的话将选区划分为5个是不可能实现的,。考虑划分出6个选区的方案进行划分筛选。 2.对于此题目的求解过程我们分为四个大的步骤。 第一步:先进行选区的划分,满足题目中的条件:一个选区可以由多个相邻的街区组成,且选区内总选民数应在30,000到100,000之间。如果两个街区不相邻,例如12和13,则它们不能组成一个选区。如果某个街区选民人数不少于50,000,则允许此街区单独作为一个选区。而且第十号街区不能单独作为一个选区。以此为条件进行划分,采用堆栈的方法来求解,比如1号街区和2号街区就可以组合成一个划分方案。 得到所有划分方案数目m。 第二步:在第一步得到多个划分方案的基础上,有题目中给出的数据,对每个划分方案进行计算得到的票数是否过半,来确定Mevo是否能取得该选区的席位。建立一维数组m[],得到席位,相应划分记为1,失去记为0。比如1,2两个街区的一个组合总人数为80000人,可能投给Mevo的票数32500票,显然没能过半,此序号的划分方案将在m[]中记为0. 第三步:对划分方案进行组合,使得组合起来刚好是14个街区,不能遗漏,也不增加。还是利用堆栈的方法,如果某个划分进入堆栈,比如划分1,2。则再进入堆栈的划分将不能再包含1,2两个街区。这样可以引入辅助的一维数组a[14],例如包含街区1,2的选区入堆栈,则将a[0],a[1]都置为1。如果继续进入堆栈的选区包含1或2,则不进堆栈,依次测试,找到一组结果使得数组a全部为1,且选区数目刚好是六个,则输出,继续直到测试完所有选区得到选区的组合。
第四步:进行最后的计算,对第三步得到的每一个组合中的ia进行计算,每个组合中对应6个ia的值,可能为1或者为0,求使得Sum=60iia最大的划分方案就是结果。
5.问题求解 5.1对于第一部分的求解过程 1.考虑四个条件: (1)一个选区可以由多个相邻的街区组成,如果两个街区不相邻,例如12和13,则它们不能组成一个选区。 (2)选区内总选民数应在30,000到100,000之间。 (3)如果某个街区选民人数不少于50,000,则允许此街区单独作为一个选区。 (4)街区10不能单独作为一个选区。
邻接图:
建立邻接矩阵模型: a[14][14]= {1,1,0,0,1,0,0,0,0,0,0,0,0,0, 0,1,1,0,1,0,0,0,0,0,0,0,0,0, 0,0,1,1,1,0,0,0,0,0,0,0,0,0, 0,0,0,1,1,0,0,0,0,1,0,0,0,0, 0,0,0,0,1,1,0,0,0,1,0,0,0,0, 0,0,0,0,0,1,1,1,0,0,0,0,0,0, 0,0,0,0,0,0,1,1,1,0,0,0,0,0, 0,0,0,0,0,0,0,1,1,1,1,0,0,0, 0,0,0,0,0,0,0,0,1,0,1,1,0,0, 0,0,0,0,0,0,0,0,0,1,1,0,1,0, 0,0,0,0,0,0,0,0,0,0,1,1,1,0, 0,0,0,0,0,0,0,0,0,0,0,1,0,1, 0,0,0,0,0,0,0,0,0,0,0,0,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,1}; 该矩阵由选区相邻情况得到,如果相邻则置为1,且认为街区自己和自己是相邻的。 取各个街区总人数数组: w[14]={30000,50000,20000,70000,20000,40000,30000,30000,40000,60000,10000,60000,40000,40000} 2.对十四个街区一一进行和其他街区的组合测试,如果满足条件则输出。 (1)对当前组进行测试总人数小于100000大于30000,如果是第一个数据直接进堆栈,如果不是判断是否和当前栈顶元素相邻,即对应数组a[][]的值为1,则进堆栈,如果不相邻继续对下一个街区进行测试。继续第二步。如果测试到了第14个街区,则进入第四步。 (2)判断堆栈栈顶元素的街区人数是否大于或等于50000且不是10号街区,满足则单独作为一组分区输出。不满足进入第三步。 (3)判断栈中所有的街区人数总和在30000到100000之间,且不止一个街区,则将此栈中所有元素作为一组输出。 (4)弹出栈顶元素,返回第一步。 用for循环对上述过程重复进行14次,则得到所有结果。 例如: 第一轮,以1号街区开始测试,和本身相邻且人数为30000,总人数在30000到100000之间,但是不到50000人,不能单独作为一个选区,紧接着发现2号街区和1号相邻,则2号进堆栈,1,2号总人数为80000,满足条件则作为一组结果输出,继续判断2号人数为50000,可以单独作为一个选区,则将2号自己作为一组结果输出。在此基础上判断3号是否又和2号相邻,且如果上述四个条件都满足,则输出1,2,3作为一组结果,,继续测试4号是否和3号相邻,结果不相邻,继续测试5号是否和3号相邻,发现3号和后面的都不相邻,就将3号出堆栈,测试2号是否和4号相邻,不相邻则测试2号是否和5号相邻,相邻且5号满足条件则进堆栈,此时堆栈中所有元素满足四个条件则作为一组结果进行输出。然后继续判断5号和6号...
如图:第一轮: 3 对应结果分区:(1,2)(1,2,3)(1,2,5)(1,5,6) 2 1 5 5 6
第二轮: 对应结果分区:(2,3,5) 2 3 5
第三轮: 对应结果分区:(3,4)(3,5,6)(3,5,10) 4 3 6 5 10 . . . 第十四轮:
相关流程图:
开始