题解
2024-04-01 20:18:54
发布于:上海
19阅读
0回复
0点赞
第一题:
读题:
给定n个数,从中选出m个数,使得这些数中的最大值与最小值差最小
思路:
先输入这些数据,再排序,这样能够保证连续的m个数中最大值与最小值之差尽可能小,再擂台找到这些的最小值
代码:
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int m,n,c=2147483647;
cin>>m>>n;
int s[n];
for(int i=0;i<n;i++)cin>>s[i];
sort(s,s+n);
for(int i=0;i<=n-m;i++)c=min(c,s[i+m-1]-s[i]);
cout<<c<<endl;
return 0;
}
这里空空如也
有帮助,赞一个