news 2026/1/20 1:17:11

第 172 场双周赛——3780. 能被 3 整除的三元组最大和

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第 172 场双周赛——3780. 能被 3 整除的三元组最大和

题目链接:3780. 能被 3 整除的三元组最大和(中等)

算法原理:

解法:分类讨论 + 贪心 + 枚举

154ms击败46.80%

时间复杂度O(Nlogn)

①分组:将数组元素按 “模 3 的结果” 分为 3 组(余 0→mod0、余 1→mod1、余 2→mod2)
②排序:每组内降序排序,方便快速取组内最大元素
计算有效组合的和:
③情况 1:同组取 3 个(同余 3 数的和必是 3 的倍数),若组内元素≥3,取前 3 大元素相加
④情况 2:三组各取 1 个(0+1+2 的和必是 3 的倍数),若三组均至少有 1 个元素,取每组最大元素相加
⑤取最大值:从所有有效组合的和中取最大值;若数组长度不足 3,直接返回 0

Java代码:

class Solution { public int maximumSum(int[] nums) { int n=nums.length,ret=0; if(n<3) return 0; List<Integer> mod0=new ArrayList<>(); List<Integer> mod1=new ArrayList<>(); List<Integer> mod2=new ArrayList<>(); for(int x:nums){ if(x%3==0) mod0.add(x); else if(x%3==1) mod1.add(x); else mod2.add(x); } //对每个集合降序,方便取最大值 Collections.sort(mod0,(a,b)->b-a); Collections.sort(mod1,(a,b)->b-a); Collections.sort(mod2,(a,b)->b-a); int size0=mod0.size(),size1=mod1.size(),size2=mod2.size(); if(size0>=3) ret=Math.max(ret,mod0.get(0)+mod0.get(1)+mod0.get(2)); if(size1>=3) ret=Math.max(ret,mod1.get(0)+mod1.get(1)+mod1.get(2)); if(size2>=3) ret=Math.max(ret,mod2.get(0)+mod2.get(1)+mod2.get(2)); if(size0>=1&&size1>=1&&size2>=1) ret=Math.max(ret,mod0.get(0)+mod1.get(0)+mod2.get(0)); return ret; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/6 5:05:59

Open-AutoGLM与JMeter对比分析(深度技术解密,仅限专业人士)

第一章&#xff1a;Open-AutoGLM与JMeter对比分析的核心维度在自动化测试与智能模型驱动的性能评估领域&#xff0c;Open-AutoGLM 与 JMeter 代表了两种不同的技术范式。前者基于大语言模型实现智能化测试脚本生成与场景推理&#xff0c;后者则是传统的负载测试工具&#xff0c…

作者头像 李华
网站建设 2025/12/22 19:13:31

【AI驱动测试新纪元】:Open-AutoGLM与SoapUI协同能力差距竟达5倍?

第一章&#xff1a;AI驱动测试新纪元的背景与意义随着软件系统复杂度的持续攀升&#xff0c;传统测试方法在覆盖率、效率和维护成本方面逐渐显现出局限性。人工智能技术的快速发展为软件测试领域带来了全新可能&#xff0c;推动测试流程从“人工主导”向“智能驱动”演进。AI不…

作者头像 李华
网站建设 2025/12/21 16:50:20

Open-AutoGLM与Parasoft SOAtest集成路径详解,资深架构师20年实战经验分享

第一章&#xff1a;Open-AutoGLM与Parasoft SOAtest集成差异在自动化测试工具的生态系统中&#xff0c;Open-AutoGLM 与 Parasoft SOAtest 的集成方式呈现出显著的技术路径差异。两者虽然均支持 API 测试与持续集成流程嵌入&#xff0c;但在架构设计、协议兼容性及扩展机制方面…

作者头像 李华
网站建设 2025/12/30 14:10:53

为什么顶尖企业都在弃用Perfecto转向Open-AutoGLM?真相在这里

第一章&#xff1a;为什么顶尖企业都在弃用Perfecto转向Open-AutoGLM&#xff1f;真相在这里 性能与灵活性的全面碾压 在自动化测试和智能流程生成领域&#xff0c;Perfecto 曾凭借其云设备矩阵和稳定的执行环境占据市场主导地位。然而&#xff0c;随着AI驱动的自动化框架崛起…

作者头像 李华