题意:要在m个数里面选n个数, 要求这n个数的差值要最小
题意在hint里很清晰了
这道题从题意到题目本身都没有什么trick
写这道题完全是为了用一下#include <numeric>里面的两个小朋友:
adjacent_difference 求相邻数的差 &&
accumulate 求和
p.s.边界要注意,都是左闭右开
int a[], b[], c[];
int main()
{
int n, m;
while(~scanf("%d%d", &n, &m))
{
for(int i=;i<m;i++)
scanf("%d", &a[i]);
sort(a, a+m);
adjacent_difference(a, a+m, b);
int d=;
for(int i=;i<=m-n+;i++)
c[d++]=accumulate(b+i, b+i+n-, );
sort(c, c+d);
printf("%d\n", c[]);
}
return ;
}
codeforces 337A