山东理工大学OJ 2074 区间覆盖问题
题目描述#include<stdio.h>#include<algorithm>using namespace std;int main(){ int val[300],i, n, m, sum, dis[300]; while(~scanf("%d %d", &n, &m)) { for(i = 0; i < n; i++) scanf("%d",&val[i]); std::sort(val, val+n); for(i = 0; i < n - 1; i++) dis[i] = val[i+1] - val[i] - 1; std::sort(dis, dis+n-1); sum = val[n-1] - val[0] + 1; int j = n - 2; for(i = 1; i < m && i < n; i++) sum -= dis[j--]; printf("%d\n",sum); } return 0;}