1403. 非递增顺序的最小子序列
解题思路
根据题意. 我们要求的结果的总和应大于 sum / 2 故 我们可以先求总和, 将数组排序. 然后逐个累加计算子序列总和是否满足题意. 若满足, 则返回答案
代码
var minSubsequence = function (nums) {
const sum = nums.reduce((p, c) => p + c, 0);
const half = Math.floor(sum / 2);
const arr = nums.sort((a, b) => b - a);
let ans = 0;
let i = 0;
for (; ans <= half; i++) ans += arr[i];
return arr.slice(0, i);
};