[AGC007C] Pushing Balls
题意
思路
非常神奇的是每次操作完后的坑洞间期望距离还是一个等差数列
这样就可以通过观察前两项得出首项和公差,然后计算答案
#include <bits/stdc++.h>
int n;
long double d,x,ans;
int main(){
scanf("%d%Lf%Lf",&n,&d,&x);
for (;n;n--){
long double n2=n*2;
ans=ans+d+(n2-1)*x/2;
d=d+(2*d+5*x)/n2;
x=x+4*x/n2;
}
printf("%.10Lf\n",ans);
}
* 生而自由 爱而无畏 *