一个一维维数组中只有1和-1,实现程序,求和为0的最长子串长度,如输入[1,-1,-1,1],输出为4。
//核心思路
//dp[i][j]表示从array[i]一直加到array[j]的和
递推式:dp[i][j] = dp[i+1][j-1] + array[i] + array[j];
判定:if(dp[i][j] == 0)
max = max(max, j-1+1);
//该方法思路与求最长回文子串的思路相同,但并非此题的最优解法
public class Solution {
public static int