记录编号 349578 评测结果 WAAWWAWWWW
题目名称 社长的qwa 最终得分 30
用户昵称 Gravatar123 是否通过 未通过
代码语言 C++ 运行时间 0.171 s
提交时间 2016-11-15 07:52:23 内存使用 2.22 MiB
显示代码纯文本
#include <iostream>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <vector>
#include<algorithm>
using namespace std;
int n,m,ans,ansb;
int ya[100015]={0},yb[100015]={0},yc[100015]={0};
int dian[100015]={0};
int xiangjia[100015]={0};
int main(){
	freopen ("qwa.in","r",stdin);
	freopen ("qwa.out","w",stdout);
    int a,b,c,d,f,g;
    cin>>n>>m;
    for(a=1;a<=n;a++)
    {
		cin>>ya[a];
    }
    sort(ya,ya+n+1);
    for(a=1;a<=n;a++)
		yb[a]=max(ya[a],ya[a+1])-min(ya[a],ya[a+1]);
    ans=0x7FFFFFFF;
    for(a=1;a<=n-m+1;a++)
    {
		ansb=0;
		for(b=a;b<=a+m-1;b++)
		{
			ansb=ansb+yb[b];
		}
		if(ansb<ans)
		{
			ans=ansb;
			d=a;
		}
	}
    for(a=m+d-2;a>=d;a--)
    {
		xiangjia[a-d+1]=xiangjia[a-d+2]+yb[a];
    }
    int jia;
    jia=1;
    ans=0;
    for(b=d+m-2;b>=1;b--)
    {
		dian[b]=(xiangjia[b]-xiangjia[b+1])*jia+dian[b+1];
		ans=ans+dian[b];
		jia++;
    }
    cout<<ans;
    return 0;
}