Leetcode 3698. Split Array With Minimum Difference

  • [Leetcode 3698. Split Array With Minimum Difference](#Leetcode 3698. Split Array With Minimum Difference)
    • [1. 解题思路](#1. 解题思路)
    • [2. 代码实现](#2. 代码实现)

1. 解题思路

这一题思路上就是一个分类讨论。

要想要分成左右两个递增和递减数列,我们首先需要从左往右以及从右往左分别考察最长的递增以及递减序列的长度。

如果两者无法组成完整的数组,那么必然不可分,否则则有两种情况。一种情况是两者没有交叉,此时只有一种分法,直接返回结果即可;第二种情况就是两者共享一个最大的元素,此时有两种分法,我们分别求出其结果然后返回最大值即可。

2. 代码实现

给出python代码实现如下:

python 复制代码
class Solution:
    def splitArray(self, nums: List[int]) -> int:
        n = len(nums)
        l = 0
        while l < n-1 and nums[l] < nums[l+1]:
            l += 1
        r = n-1
        while r > 0 and nums[r] < nums[r-1]:
            r -= 1
        if r-l > 1:
            return -1
        elif r-l == 1:
            return abs(sum(nums[:r]) - sum(nums[r:]))
        else:
            return min(abs(sum(nums[:r]) - sum(nums[r:])), abs(sum(nums[:r+1]) - sum(nums[r+1:])))

提交代码评测得到:耗时73ms,占用内存30.68MB。

相关推荐
Espresso Macchiato5 小时前
Leetcode 3700. Number of ZigZag Arrays II
动态规划·leetcode hard·矩阵乘法·leetcode 3700·leetcode周赛469
Espresso Macchiato1 个月前
Leetcode 3665. Twisted Mirror Path Count
动态规划·leetcode medium·leetcode 3665·leetcode双周赛164
Espresso Macchiato1 个月前
Leetcode 3669. Balanced K-Factor Decomposition
动态规划·质因数分解·leetcode medium·leetcode 3669·leetcode周赛465
Espresso Macchiato2 个月前
Leetcode 3644. Maximum K to Sort a Permutation
leetcode medium·位操作·数组排序·leetcode 3644·leetcode周赛462
Espresso Macchiato2 个月前
Leetcode 3629. Minimum Jumps to Reach End via Prime Teleportation
bfs·广度优先遍历·leetcode medium·leetcode 3629·leetcode周赛460·质数求解·质因素分解
Espresso Macchiato4 个月前
Leetcode 3572. Maximize Y‑Sum by Picking a Triplet of Distinct X‑Values
leetcode medium·leetcode 3572
Espresso Macchiato4 个月前
Leetcode 3568. Minimum Moves to Clean the Classroom
剪枝·广度优先遍历·leetcode medium·堆排·leetcode周赛452·leetcode 3568
Espresso Macchiato4 个月前
Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix
leetcode·leetcode medium·leetcode周赛452·leetcode 3567
Espresso Macchiato4 个月前
Leetcode 3566. Partition Array into Two Equal Product Subsets
动态规划·leetcode medium·leetcode 3566·leetcode周赛452