当前位置:网站首页>【日常训练】1403. 非递增顺序的最小子序列
【日常训练】1403. 非递增顺序的最小子序列
2022-08-05 01:59:00 【Puppet__】
题目
给你一个数组 nums,请你从中抽取一个子序列,满足该子序列的元素之和 严格 大于未包含在该子序列中的各元素之和。
如果存在多个解决方案,只需返回 长度最小 的子序列。如果仍然有多个解决方案,则返回 元素之和最大 的子序列。
与子数组不同的地方在于,「数组的子序列」不强调元素在原数组中的连续性,也就是说,它可以通过从数组中分离一些(也可能不分离)元素得到。
注意,题目数据保证满足所有约束条件的解决方案是 唯一 的。同时,返回的答案应当按 非递增顺序 排列。
示例 1:
输入:nums = [4,3,10,9,8]
输出:[10,9]
解释:子序列 [10,9] 和 [10,8] 是最小的、满足元素之和大于其他各元素之和的子序列。但是 [10,9] 的元素之和最大。
示例 2:
输入:nums = [4,4,7,6,7]
输出:[7,7,6]
解释:子序列 [7,7] 的和为 14 ,不严格大于剩下的其他元素之和(14 = 4 + 4 + 6)。因此,[7,6,7] 是满足题意的最小子序列。注意,元素按非递增顺序返回。
示例 3:
输入:nums = [6]
输出:[6]
提示:
1 <= nums.length <= 500
1 <= nums[i] <= 100
代码
class Solution {
// 排序从后往前加入list,直到list中数的和大于一半sum
public List<Integer> minSubsequence(int[] nums) {
Arrays.sort(nums);
List<Integer> ansList = new ArrayList<>();
int sum = 0;
for(int num : nums){
sum += num;
}
int tmp = 0;
for(int i = nums.length - 1; i >=0; i--){
tmp += nums[i];
ansList.add(nums[i]);
if(tmp * 2 > sum){
break;
}
}
return ansList;
}
}
边栏推荐
- 《.NET物联网从零开始》系列
- 如何基于OpenVINO POT工具简单实现对模型的量化压缩
Utilities - 开篇-开启全新的.NET现代应用开发体验
- 习题:选择结构(一)
- 领域驱动设计——MDD
- Exploding the circle of friends, Alibaba produced billion-level concurrent design quick notes are too fragrant
- ".NET IoT from scratch" series
- Opencv - video frame skipping processing
- 【Unity入门计划】2D游戏中遮挡问题的处理方法&伪透视
猜你喜欢

pytorch的使用:卷积神经网络模块

直播预告|30分钟快速入门!来看可信分布式AI链桨的架构设计

Are testing jobs so hard to find?I am 32 this year and I have been unemployed for 2 months. What should an older test engineer do next to support his family?
![[Word] #() error occurs after Word formula is exported to PDF](/img/6a/168ded19d22826b6af974907f480fb.png)
[Word] #() error occurs after Word formula is exported to PDF

"Dilili, wait for the lights, wait for the lights", the prompt sound for safe production in the factory

开篇-开启全新的.NET现代应用开发体验

iNFTnews | 对体育行业和球迷来说,NFT可以带来什么?
![[Endnote] Word inserts a custom form of Endnote document format](/img/70/e8a6f15b80e9c53db369fd715e51df.png)
[Endnote] Word inserts a custom form of Endnote document format

KingbaseES V8 GIS数据迁移方案(2. Kingbase GIS能力介绍)

硬实力和软实力,哪个对测试人来说更重要?
随机推荐
MySQL learning
【Word】Word公式导出PDF后出现井号括号#()错误
【Endnote】Word插入自定义形式的Endnote文献格式
居民用水问题
【七夕如何根据情侣倾听的音乐进行薅羊毛】背景音乐是否会影响情侣对酒的选择
Greenplum数据库故障分析——版本升级后gpstart -a为何返回失败
HOG特征学习笔记
如何创建rpm包
the mechanism of ideology
程序员失眠时的数羊列表 | 每日趣闻
source program in assembly language
转:查尔斯·汉迪:你是谁,比你做什么更重要
Transfer Learning - Joint Geometrical and Statistical Alignment for Visual Domain Adaptation
CPDA|运营人如何从负基础学会数据分析(SQL)
【MySQL系列】- LIKE查询 以%开头一定会让索引失效吗
".NET IoT from scratch" series
ExcelPatternTool: Excel table-database mutual import tool
测试工作这么难找吗?今年32,失业2个月,大龄测试工程师接下来该拿什么养家?
oracle将restful接口封装到视图中
为什么他们选择和AI恋爱?