【暴力超时,双指针解法更好】
【找最长回文子串,不错哦,参考1616题做出来了!// 暴力会超时,注意使用双指针的方法,回文串的函数判断处理】
【另一种解法:分组 + 哈希表
思路与算法
我们可以将四个数组分成两部分,AA 和 BB 为一组,CC 和 DD 为另外一组。
对于 AA 和 BB,我们使用二重循环对它们进行遍历,得到所有 A[i]+B[j] 的值并存入哈希映射中。对于哈希映射中的每个键值对,每个键(也就是key)表示一种 A[i]+B[j],对应的值(也就是value)为 A[i]+B[j] 出现的次数。对于 CC 和 DD,我们同样使用二重循环对它们进行遍历。当遍历到 C[k]+D[l]时,如果 -(C[k]+D[l]) 出现在哈希映射中,那么将 -(C[k]+D[l])对应的值累加进答案中。
最终即可得到满足 A[i]+B[j]+C[k]+D[l]=0的四元组数目。】
yo peace!