首页 » SEO优化 » phpexplode整数技巧_leetcode2178_go_拆分成最多半目的正偶数之和

phpexplode整数技巧_leetcode2178_go_拆分成最多半目的正偶数之和

duote123 2024-12-01 0

扫一扫用手机浏览

文章目录 [+]

比方说,给你 finalSum = 12 ,那么这些拆分是 符合哀求 的(互不相同的正偶数且和为 finalSum):

(2 + 10) ,(2 + 4 + 6) 和 (4 + 8) 。

phpexplode整数技巧_leetcode2178_go_拆分成最多半目的正偶数之和

它们中,(2 + 4 + 6) 包含最多数目的整数。
把稳 finalSum 不能拆分成 (2 + 2 + 4 + 4) ,由于拆分出来的整数必须互不相同。

phpexplode整数技巧_leetcode2178_go_拆分成最多半目的正偶数之和
(图片来自网络侵删)

请你返回一个整数数组,表示将整数拆分成 最多 数目的正偶数数组。

如果没有办法将 finalSum 进行拆分,请你返回一个 空 数组。
你可以按 任意 顺序返回这些整数。

示例 1:输入:finalSum = 12 输出:[2,4,6]

阐明:以下是一些符合哀求的拆分:(2 + 10),(2 + 4 + 6) 和 (4 + 8) 。

(2 + 4 + 6) 为最多数目的整数,数目为 3 ,以是我们返回 [2,4,6] 。

[2,6,4] ,[6,2,4] 等等也都是可行的解。

示例 2:输入:finalSum = 7 输出:[]

阐明:没有办法将 finalSum 进行拆分。

以是返回空数组。

示例 3:输入:finalSum = 28 输出:[6,8,2,12]

阐明:以下是一些符合哀求的拆分:(2 + 26),(6 + 8 + 2 + 12) 和 (4 + 24) 。

(6 + 8 + 2 + 12) 有最多数目的整数,数目为 4 ,以是我们返回 [6,8,2,12] 。

[10,2,4,12] ,[6,2,4,16] 等等也都是可行的解。

提示:1 <= finalSum <= 1010

解题思路剖析

1、贪心;韶光繁芜度O(n^(1/2)),空间繁芜度O(n^(1/2))

func maximumEvenSplit(finalSum int64) []int64 { if finalSum%2 == 1 { return nil } res := make([]int64, 0) for i := int64(2); i <= finalSum; i = i + 2 { res = append(res, i) finalSum = finalSum - i // 减去当前值 } res[len(res)-1] = res[len(res)-1] + finalSum // 剩下数加到末了1位 return res}总结

Medium题目,采取贪心思路,依次从小到大添加,剩下不足加到末了1位

相关文章

崩坏学园2材料代码背后的奇幻世界

《崩坏学园2》是一款以二次元风格著称的手机游戏,自2016年上线以来,吸引了大量玩家。游戏中,玩家通过收集和合成各种材料,提升角色...

SEO优化 2025-02-18 阅读0 评论0

小松叉车故障代码故障排查与预防步骤

叉车作为物流、仓储等领域的必备设备,其应用越来越广泛。叉车在使用过程中难免会出现故障,其中故障代码的解读成为了维修人员的重要工作。...

SEO优化 2025-02-18 阅读0 评论0

宗地代码编制规则新时代土地管理的里程碑

宗地代码,作为我国土地管理的基础性工作,是确保土地资源有序、高效、安全利用的重要手段。土地资源供需矛盾日益突出。在此背景下,制定科...

SEO优化 2025-02-18 阅读0 评论0

探索网页之美从源代码看设计之精髓

网页已成为我们日常生活中不可或缺的一部分。而那些美观、实用的网页设计,无疑给人留下了深刻的印象。网页的美观究竟源自何处?本文将从源...

SEO优化 2025-02-18 阅读0 评论0