题解 P4594 【[COCI2011-2012#5] BLOKOVI】
考虑贪心,考虑每次从上往下加入一个块,新块
#include <bits/stdc++.h>
#define maxn 300010
using namespace std;
int n,a[maxn];
double sum,ans;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
for(int i=n;i>1;i--)
{
int qwq=a[i];
a[i]+=a[i+1];
double del=double(qwq)/double(a[i]);
ans=max(ans,max(ans+del,2-del));
}
printf("%.8lf",ans);
}