动态规划能量项链的 标程的循环不是很懂,求解释~
来源:
时间:2024-08-17 13:47:57
热度:
动态规划能量项链的 标程的循环不是很懂,求解释~【专家解说】:题意背景故事略蛋疼啊...其实这个事情的模型就是矩阵相乘吧,只不过对于矩阵来说,一般都是找乘法次数最少的组合,这里是找
【专家解说】:题意背景故事略蛋疼啊...其实这个事情的模型就是矩阵相乘吧,只不过对于矩阵来说,一般都是找乘法次数最少的组合,这里是找最多的
首先,你要了解动态规划在这里的思路。先不考虑珠子可以循环这个性质,假设珠子就是1,2,...,N这样,那么我们就是要找(1,2,..,N)之中两两聚合的最大值,这个最大值应该在以下值当中产生:
(1) 和 (2,3,...,N)聚合
(1,2)和(3,4,...N)聚合
....
(1,2,...N-1)和(n)聚合
也就是把1到N一切为二,前半段聚合成一个珠子,后半段聚合成一个珠子,再把聚合后的珠子做一次聚合。至于在哪里一分为二,就是最里面的for循环做的事情。它在i到j之中寻找一个k,使得i到k聚合的能量+(k+1)到j聚合的能量+前面两个聚合出来的珠子聚合的能量 为最大值。而外面的两个for循环,就是在做遍历(i,j)这样的二维组合,先算f(1,2),在算f(2,3)这样只相差1的,然后就可以算f(1,3)这样i,j相差更大的f值了。我们的最终目标是算出f(1,N)的值,也即题目的答案
但是题目还有个条件,就是珠子可以循环,所以我们要在f(1,N),f(2,N+1),f(3,N+2),...,f(N,2N-1)这之间找一个最大值。这也就是为什么一开始 e[N+i]=e[i]; 以及第一个for循环的循环条件是2N-1,至于第二个for循环,就是要保证2点,第一i与j的差距从小到大遍历,第二i与j的差距不超过N,因为你现在数组的长度是2N,但是珠子仍旧只有N颗,防止计算f(1,2N-1)这种无意义的值。
上一篇:森威尔温控管家怎么安装下载?
-
空气的流动形成风,风具有能量,称为风能.风能具有来源丰富、安全卫生等优点.图是我国某地区风力发电的2024-08-17
-
上海世博会上,100辆燃料电池观光车活跃在世博园区,它们靠氢气和氧气反应提供能量.由于它们“喝”的是2024-08-17
-
自然界的哪些能量转化为水分的能量,有哪些?2024-08-17
-
节能减排评估师的学习里面有没有关于节能评估与节能量监测验证的主要内容、方法及流程?2024-08-17
-
化学反应中通常伴随着能量变化,下列说法中错误的是( )A.太阳能、生物质能、氢能都属于可再生能源B2024-08-17
-
下列对能量转化的描述不正确的是( ) A.蓄电池充电:电能一化学能 B.发电机工作:电能一机械2024-08-17
-
节能减排评估师培训有:节能量审核、计算方法与检测标准及技术人员配备的相关问题吗?2024-08-17
-
下列对能量转化的描述不正确的是( )A.蓄电池充电:化学能转化为电能B.萤火虫发光:生物质能转化为2024-08-17
-
用三个大地之核,一个海洋能量能一定融合出瞬杀吗?2024-08-17
-
下列有关能量转化的认识不正确的是( ) A.植物光合作用时,太阳能转化为化学能 B.电解水生成2024-08-17
-
化学反应与能量章节重点知识2024-08-17
-
物理学的能量:是不是有:内能/机械能/光能/化学能/核能/电能/生物质能/太阳能大神们帮帮忙2024-08-17
-
自然界有多种形式的能量,如什么2024-08-17
-
目前全球正面临着能源、环境、水资源、粮食等方面的危机。⑴目前人类通过化学反应获得的能量大多来自于煤2024-08-17
-
燃烧液化石油气为炒菜提供能量发生什么化学反应2024-08-17