Leetcode 1013. 将数组分成和相等的三个部分(终于解决)
2023-09-14 09:07:05 时间
给你一个整数数组 arr,只有可以将其划分为三个和相等的 非空 部分时才返回 true,否则返回 false。
形式上,如果可以找出索引 i + 1 < j 且满足 (arr[0] + arr[1] + … + arr[i] == arr[i + 1] + arr[i + 2] + … + arr[j - 1] == arr[j] + arr[j + 1] + … + arr[arr.length - 1]) 就可以将数组三等分。
示例 1:
输入:arr = [0,2,1,-6,6,-7,9,1,2,0,1]
输出:true
解释:0 + 2 + 1 = -6 + 6 - 7 + 9 + 1 = 2 + 0 + 1
示例 2:
输入:arr = [0,2,1,-6,6,7,9,-1,2,0,1]
输出:false
示例 3:
输入:arr = [3,3,6,5,-2,2,5,1,-9,4]
输出:true
解释:3 + 3 = 6 = 5 - 2 + 2 + 5 + 1 - 9 + 4
提示:
- 3 <= arr.length <= 5 * 104
- -10^ 4 &l
相关文章
- Java实现 LeetCode 767 重构字符串(ASCII的转换)
- Java实现 LeetCode 706 设计哈希映射(数组+链表)
- Java实现 LeetCode 581 最短无序连续子数组(从两遍搜索找两个指针)
- Java实现 LeetCode 518 零钱兑换 II
- Java实现 LeetCode 224 基本计算器
- Java实现 LeetCode 165 比较版本号
- Java实现 LeetCode 88 合并两个有序数组
- Java实现 LeetCode 49 字母异位词分组
- 每日一道 LeetCode (14):数组加一
- [LeetCode] Repeated DNA Sequences
- LeetCode-801. 使序列递增的最小交换次数【动态规划,滚动数组】
- LeetCode-1598. 文件夹操作日志搜集器【栈,字符串,数组】
- LeetCode-1662. 检查两个字符串数组是否相等【数组,双指针,字符串】
- 【LeetCode 26】删除排序数组中的重复项
- 【LeetCode 21】合并两个有序链表
- LeetCode - 1652 拆炸弹
- leetcode第一刷_Word Search
- 【LeetCode 中等 数组 python3】15. 三数之和
- 【LeetCode 中等 数组】56 合并区间
- Leetcode 1389. 按既定顺序创建目标数组
- Leetcode 453. 最小操作次数使数组元素相等(未解决,仅供参考)
- Leetcode 2012. 数组美丽值求和(超时待解决)
- Leetcode 1991. 找到数组的中间位置(暴力枚举)
- LeetCode Pow(x, n)-简单粗暴法解决
- Leetcode 724. 寻找数组的中心下标(可以,一次过)
- [LeetCode] 523. 连续的子数组和 ☆☆☆(动态规划)
- leetcode 104. 二叉树的最大深度 js实现
- 【Leetcode刷题Python】77. 组合
- 【Leetcode刷题Python】718. 最长重复子数组
- 【LeetCode】剑指 Offer II 109. 开密码锁
- 【LeetCode】剑指 Offer II 089. 房屋偷盗
- leetcode 搜索插入位置