337APuzzles

dangerous


  

 1 /*大水题目。不解释
 2 给你m个数,从中选出n个,保证最大值和最小值的差值最小,
 3 做法:从小到大排序,然后暴力枚举每个长度是n的序列*/
 4 #include<stdio.h>
 5 #include<string.h>
 6 #include<algorithm>
 7 using namespace std;
 8 int main()
 9 {
10     int i,j,n,m,k;
11     int a[110];
12     while(scanf("%d%d",&n,&m)!=EOF)
13     {
14         int min=0x3f3f3f3f;
15         for(i=1;i<=m;i++)
16             scanf("%d",&a[i]);
17         sort(a+1,a+1+m);
18         for(i=1;i<=m;i++)
19         for(j=1;j<=m;j++)
20         {
21             if(j-i+1==n && a[j]-a[i]<min)
22             {
23                 min=a[j]-a[i];
24             }
25         }
26         printf("%d\n",min);
27     }
28     return 0;
29 }

 

posted on 2013-08-17 02:40  ok_boy  阅读(226)  评论(0编辑  收藏  举报

导航