1434:Best Cow Fences

 

 

const int N=1e5+5;

    int n,m,t;
    int i,j,k;
    double a[N],b[N],sum[N];
int main()
{
	cin>>n>>k;
    double maxx=0;
	for(int i=1;i<=n;i++)  { sf(a[i]); maxx=max(maxx,a[i]); }
	double eps=1e-4;
	double l=0,r=maxx;
	while(r-l>eps)
	{
		double mid=(l+r)/2;
		for(int i=1;i<=n;i++) //答案轉變爲使得長度大於 L 的序列和大於 0
        {
            b[i]=a[i]-mid;
            sum[i]=sum[i-1]+b[i];
        }
		double ans=-1e10;
		double minn=1e10;
		for(int i=k;i<=n;i++)
		{
			minn=min(minn,sum[i-k]);
			ans=max(ans,sum[i]-minn);
		}
		if(ans>=0)  l=mid;
		else        r=mid; //記錄最大值
	}
	pd( int ( r*1000 ) );
    //PAUSE;
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章