第三个点总是WA,有大佬能告诉我为什么吗?
#include<bits/stdc++.h>
using namespace std;
int n,m,i,l,r,la,ans;
float a[100005],b[100005],c[100005],ma;
int main(){
cin>>n>>m;
cin>>a[0];
b[0]=a[0];
for(i=1;i<n;i++)
{
cin>>a[i];
b[i]=b[i-1]+a[i];
}
for(i=0;i<n-m+1;i++)
{
l=m-1+i; r=n-1;
c[i]=(b[l]-b[i-1])/(l-i+1);
la=1;
while(r-l>0)
{
if(la==1)
{
if((b[r]-b[l])/(r-l)>c[i])
{
la=2; c[i]=(b[r]-b[i-1])/(r-i+1);
l=(l+r+1)/2;
}
else
{
r=(l+r)/2;
}
}
else
{
if((b[r]-b[l])/(r-l)>c[i])
{
l=(l+r+1)/2;
}
else
{
la=1; c[i]=(b[l]-b[i-1])/(l-i+1);
r=(l+r)/2;
}
}
}
}
ma=c[0];
for(i=1;i<n-m+1;i++)
{
if(c[i]>ma)
ma=c[i];
}
ans=1000*ma;
cout<<ans;
return 0;
}