【leetcode】可被三整除的最大和

题目链接:1262. 可被三整除的最大和 - 力扣(LeetCode)

题目的意思是要找数组元素的最大和,这个和必须能被三整除

对于一个和来说,它和三整除就只有三个结果,0,1,2,可以在遍历数组中记录和模3三种结果的最大值

复制代码
class Solution {
public:
    int maxSumDivThree(vector<int> &nums) {
        int remains[3] = {0};
        int zero, one, two;
        for (int num: nums) {
            zero = remains[0] + num;
            one = remains[1] + num;
            two = remains[2] + num;
            remains[zero % 3] = max(remains[zero % 3], zero);
            remains[one % 3] = max(remains[one % 3], one);
            remains[two % 3] = max(remains[two % 3], two);
        }
        return remains[0];
    }
};
相关推荐
南境十里·墨染春水4 小时前
C++传记(面向对象)虚析构函数 纯虚函数 抽象类 final、override关键字
开发语言·c++·笔记·算法
2301_797172754 小时前
基于C++的游戏引擎开发
开发语言·c++·算法
有为少年5 小时前
告别“唯语料论”:用合成抽象数据为大模型开智
人工智能·深度学习·神经网络·算法·机器学习·大模型·预训练
比昨天多敲两行6 小时前
C++ 二叉搜索树
开发语言·c++·算法
Season4506 小时前
C++11之正则表达式使用指南--[正则表达式介绍]|[regex的常用函数等介绍]
c++·算法·正则表达式
Tisfy6 小时前
LeetCode 2839.判断通过操作能否让字符串相等 I:if-else(两两判断)
算法·leetcode·字符串·题解
问好眼6 小时前
《算法竞赛进阶指南》0x04 二分-1.最佳牛围栏
数据结构·c++·算法·二分·信息学奥赛
会编程的土豆6 小时前
【数据结构与算法】优先队列
数据结构·算法
minji...8 小时前
Linux 进程信号(二)信号的保存,sigset_t,sigprocmask,sigpending
linux·运维·服务器·网络·数据结构·c++·算法
罗湖老棍子8 小时前
最大数(信息学奥赛一本通- P1549)(洛谷-P1198)
数据结构·算法·线段树·单点修改 区间求最大值