一:题目地址

题目

二:解题思路

先对数据排序,再从最大的一边进行处理

三:代码

java

  1. public static List<Integer> minSubsequence(int[] nums) {
  2. List<Integer> result = new ArrayList<Integer>();
  3. int count = 0;
  4. int current = 0;
  5. Arrays.sort(nums);
  6. for (int num : nums) {
  7. count += num;
  8. }
  9. for (int x = nums.length - 1; x >= 0; x--) {
  10. result.add(nums[x]);
  11. if ((current += nums[x]) - (count -= nums[x]) > 0) {
  12. break;
  13. }
  14. }
  15. return result;
  16. }

go

  1. func minSubsequence(nums []int) []int {
  2. }