当前位置:网站首页>2022.08.05_每日一题
2022.08.05_每日一题
2022-08-09 18:00:00 【诺.い】
1403. 非递增顺序的最小子序列
题目描述
给你一个数组 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
coding
class Solution {
public List<Integer> minSubsequence(int[] nums) {
List<Integer> res = new ArrayList<>();
int sum = Arrays.stream(nums).sum();
Arrays.sort(nums);
int temp = sum;
for (int i = nums.length - 1; i >= 0; i --) {
res.add(nums[i]);
temp -= nums[i];
if (temp < sum - temp) {
break;
}
}
return res;
}
}
边栏推荐
猜你喜欢
IDEA工具常用配置
100+开箱即用的AI工具箱;程序员150岁长寿指南;『地理空间数据科学』课程资料;Graphic数据可视化图表库;前沿论文 | ShowMeAI资讯日报
[免费专栏] Android安全之GDB动态调试APP
字节二面:可重复读隔离级别下,这个场景会发生什么?
[免费专栏] Android安全之Android Fragment注入
华为发布「国产Copilot内核」PanGu-Coder,而且真的能用中文哦!
VIT transformer详解
【知识点合辑】numpy常用函数+jupyter小用法
没有 accept,TCP 连接可以建立成功吗?
使用mysql:5.6和 owncloud 镜像,构建一个个人网盘
随机推荐
uniapp离线推送华为厂商申请流程
Qt 5.12 LTS 部署
五种常用的排序方法
[免费专栏] Android安全之数据存储与数据安全【大集合】
基于AWS构建云上数仓第一步:云平台的基础概念
How to stop the test after reaching a given number of errors during stress testing in JMeter
网络安全:常见的网络协议
PHP 变量注释/**@var*/
JSDN blog system
Uniapp 应用未读角标插件 Ba-Shortcut-Badge
shared usage in d
如何抑制告警风暴?
YOLO v3源码详解
Typora 结合 Picgo 自动上传图像
YOLO v3 source, rounding
Paper sharing: "FED BN" uses the LOCAL BATCH NORMALIZATION method to solve the Non-iid problem
jmeter - record script
与同步传递相关的获取-释放序列
[免费专栏] Android安全之和平精英(FZ)APK逆向分析
mysql双主备份失败?