【动态规划】leetcode-1262.可被3整除的最大和
发布日期:2021-05-24 08:29:04 浏览次数:19 分类:精选文章

本文共 401 字,大约阅读时间需要 1 分钟。

要解决给你一个整数数组 nums,能够被三整除的元素的最大和的问题,可以使用动态规划的方法。具体来说,我们可以维护三个变量 r0、r1 和 r2,分别表示当前遍历到的元素中,与模3的余数分别为0、1、2的最大和。通过遍历数组中的每个元素,我们可以逐步更新这三个变量,最终返回 r0 的值作为结果。

步骤如下:

  • 初始化三个变量 r0、r1、r2 为 0。
  • 遍历数组中的每个元素 num:
    • 计算更新后的余数0、1、2的可能最大值:
      • 余数0 的可能新值为 r0 + num
      • 余数1 的可能新值为 r1 + num
      • 余数2 的可能新值为 r2 + num
    • 计算每个余数的新值与当前的余数值的最大值,并更新对应的余数变量。
  • 最终,返回 r0 的值,因为它表示能被三整除的元素的最大和。
  • 这个方法通过动态维护各个余数的最大值,确保了每一步的选择最优,从而得到正确的解。

    答案:能被三整除的元素最大和为 dp[0]。

    上一篇:【链表】leetcode-445.两数相加II
    下一篇:【动态规划】leetcode-1706.球会落何处

    发表评论

    最新留言

    网站不错 人气很旺了 加油
    [***.192.178.218]2025年04月16日 11时59分18秒