最近,我问这个问题在接受采访时的最大总和,最佳长度的所有连续的子阵列
鉴于非负整数数组发现,能够获得这样的长度 最大累积总和所有 参与子阵列是一个素数。我试图想出一个使用动态规划的解决方案,但不幸的是不能。
例如:如果阵列是[9,8,7,6,5,4,3,1,2,2]它应该返回(子阵列[9,8的总和, 7,6,5,4,3]长度7和[2,2]长度2)。你不能合并[9,8,7,6,5,4,3]和[1,2,2],因为它会导致长度为10的连续子矩阵(幂等性),它是非素数。
任何人都可以解释如何使用DP解决这些问题?谢谢。
为什么不15? [8,4,3] - 长度是一个素数(3)。你没有说所有的元素都应该是素数。 –
为什么要使用动态编程?这只是首先找到最大素数(从列表长度后退),然后是具体长度的最大子数组,这是一个非常常见的问题。 – ChatterOne
@user它应该包含连续的元素。对不起忘了提到这一点。修复! –