思路:
直接贪心从后往前跳,记得k-1
c o d e code code
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
long long n, k;
long long a[101000], b[100010];
int main()
{
scanf("%lld%lld", &n, &k);
for(long long i=1; i<=n; i++)
{
scanf("%lld", &a[i]);
a[i]=(a[i]+11)/12;
}
sort(a+1, a+1+n);
long long ans=a[n]*12;
for(int i=0; i<n; i++)
b[i]=a[i]-a[i+1];
sort(b, b+n+1);
for(int i=1; i<k; i++)
{
if(!b[i-1])
break;
ans+=(b[i-1]+1)*12;
}
printf("%lld", ans);
return 0;
}