跳到主要内容

1785.构成特定和需要添加的最少元素

链接:1785.构成特定和需要添加的最少元素
难度:Medium
标签:贪心、数组
简介:返回使数组元素总和等于 goal 所需要向数组中添加的 最少元素数量 ,添加元素 不应改变 数组中 abs(nums[i]) <= limit 这一属性。

题解 1 - cpp

  • 编辑时间:2022-12-16
  • 执行用时:100ms
  • 内存消耗:71.7MB
  • 编程语言:cpp
  • 解法介绍:向上取整。
class Solution {
public:
int minElements(vector<int>& nums, int limit, int goal) {
long long v = goal;
for (auto &num : nums) v -= num;
v = abs(v);
return ceil(1.0 * v / limit);
}
};

题解 2 - typescript

  • 编辑时间:2022-12-16
  • 执行用时:92ms
  • 内存消耗:50.5MB
  • 编程语言:typescript
  • 解法介绍:向上取整。
function minElements(nums: number[], limit: number, goal: number): number {
return Math.ceil(Math.abs(nums.reduce((sum, num) => sum - num, goal)) / limit);
}