1984. 学生分数的最小差值
1984. 学生分数的最小差值
给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数。另给你一个整数 k 。
从数组中选出任意 k 名学生的分数,使这 k 个分数间 最高分 和 最低分 的 差值 达到 最小化 。
返回可能的 最小差值 。
示例 1:输入:nums = [90], k = 1
输出:0
解释:选出 1 名学生的分数,仅有 1 种方法:
- [90] 最高分和最低分之间的差值是 90 - 90 = 0
可能的最小差值是 0示例 2:输入:nums = [9,4,1,7], k = 2
输出:2
解释:选出 2 名学生的分数,有 6 种方法:
- [9,4,1,7] 最高分和最低分之间的差值是 9 - 4 = 5
- [9,4,1,7] 最高分和最低分之间的差值是 9 - 1 = 8
- [9,4,1,7] 最高分和最低分之间的差值是 9 - 7 = 2
- [9,4,1,7] 最高分和最低分之间的差值是 4 - 1 = 3
- [9,4,1,7] 最高分和最低分之间的差值是 7 - 4 = 3
- [9,4,1,7] 最高分和最低分之间的差值是 7 - 1 = 6
可能的最小差值是 2
提示:
- 1 <= k <= nums.length <= 1000
- 0 <= nums[i] <= 105
解题思路
我们先对数组按从小到大的顺序进行排序,枚举长度为k的所有区间,因为我们的数组是有序的,因此我们每一个区间也是有序的,根据这个特性,我们可以得出区间的首尾元素就是区间内的最大值和最小值,因此 最高分 和 最低分 的 差值 只需要将区间末尾元素,减去区间头元素即可,并且在所有可能的区间内选出最小差值的区间。
代码
class Solution {public:int minimumDifference(vector<int>& nums, int k) {sort(nums.begin(),nums.end());int res(INT_MAX);for (int i = 0; i+k <= nums.size(); ++i) {res=min(nums[i+k-1]-nums[i],res);}return res;}
};
1984. 学生分数的最小差值相关推荐
- 「 每日一练,快乐水题 」1984. 学生分数的最小差值
✅力扣原题: 力扣链接:1984. 学生分数的最小差值 ✅题目简述: 给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数.另给你一个整数 k . 从数组 ...
- LeetCode 1984. 学生分数的最小差值
文章目录 1. 题目 2. 解题 1. 题目 给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数.另给你一个整数 k . 从数组中选出任意 k 名学生的 ...
- 2022-4-10 Leetcode 1984.学生分数的最小差值
class Solution {public:int minimumDifference(vector<int>& nums, int k) {sort(nums.begin(), ...
- LeetCode简单题之学生分数的最小差值
题目 给你一个 下标从 0 开始 的整数数组 nums ,其中 nums[i] 表示第 i 名学生的分数.另给你一个整数 k . 从数组中选出任意 k 名学生的分数,使这 k 个分数间 最高分 和 最 ...
- leetcode算法题--学生分数的最小差值
原题链接:https://leetcode-cn.com/problems/minimum-difference-between-highest-and-lowest-of-k-scores/ cla ...
- 力扣解法汇总1984-学生分数的最小差值
目录链接: 力扣编程题-解法汇总_分享+记录-CSDN博客 GitHub同步刷题项目: GitHub - September26/java-algorithms: 算法题汇总,包含牛客,leetCod ...
- mysql监控 hp_0066 使用PHP和MySQL实现学生分数信息管理
原标题:0066 使用PHP和MySQL实现学生分数信息管理 上节课介绍了MySQL数据库中如何使用SQL语言查询和变更数据. 这节课来介绍如何通过PHP调用SQL语句实现数据管理功能网页. 通过PH ...
- C++ 使用静态变量和静态方法统计学生分数和学生个数
#include <iostream> #include <cstdlib>using namespace std;int strlen(const char s[]){int ...
- 计算学生分数的最大值,最小值和总分
package shi;import java.util.Scanner; public class shi{public static void main(String[] args) {// TO ...
最新文章
- python perl 日本的应用_将perl-soap应用程序移植到python
- Linux Shell常用技巧(十二)
- 平方环法_2019环法挑战赛加速诸暨“运动之城”建设 推动“体育+旅游”新热潮...
- angular 示例项目
- apollo java客户端_携程配置中心Apollo的Java客户端API的使用
- 不显示样式 引用bootstrap_Bootstrap的引用样式
- memcache/redis 缓存学习笔记
- 工作要求,写了一些没用的设计文档
- window10c语言软件下载,win10中文语言包下载
- 第六届“强网杯”全国网络安全挑战赛-青少年专项赛
- UltraISO刻录系统光盘或刻录U启系统
- 苹果笔记本怎么查看计算机基本信息,怎么区分查找苹果电脑笔记本macBook pro的年份、型号及序列号...
- 2019/4/2更新 重制3617-6.17 增加918+6.21 二合一引导启动系统盘
- 选中DataGridView行,将数据返填到TextBox控件
- 一道面试题:写出SQL语句实现下述功能
- matlab expma,现代科学运算—MATLAB语言与应用-中国大学mooc-题库零氪
- 论中国足球教练排名,“神奇教练”米卢说第二,没人敢称第一
- Java入门——while循环:求珠穆朗玛峰高度
- 『TypeScript』泛型
- 真正的头号玩家——游戏AI