Aimee

讨厌之处在于要求花费

花费可以视为上次花费+1 和次数相等

先考虑次数

\(f_i=\frac{n-i}{n}*f_{i+1}+\frac{i}{n}*f_i+1=f_{i+1}+\frac{n}{n-i}\)

那么期望呢

\(g_i=\frac{i}{n}*(g_i+f_i+1)+\frac{n-i}{n}*(g_{i+1}+f_{i+1}+1)\)

啥意思呢?当前花费为总花费\(g\)部分加上期望次数+1(本次花费)

化简一下

\(g_i=\frac{i}{n-i}*f_i+g_{i+1}+f_{i+1}+\frac{n}{n-i}\)

开始运算

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
double n;
double Archie[1000001];
double Aimee[100001];
int main(){
	scanf("%lf",&n);
	for(int i=n-1;i>=0;--i){
		Archie[i]=Archie[i+1]+n/(n-i);
		Aimee[i]=i/(n-i)*(Archie[i]+1)+Archie[i+1]+Aimee[i+1]+1;
	}
	printf("%.2lf",Aimee[0]);
	return 0;
}	

相关文章:

  • 2022-12-23
  • 2021-09-22
  • 2021-07-15
  • 2021-09-19
  • 2021-09-05
  • 2021-10-21
  • 2021-07-28
  • 2022-02-10
猜你喜欢
  • 2022-12-23
  • 2022-01-19
  • 2021-12-01
  • 2022-03-04
  • 2021-08-22
  • 2022-12-23
  • 2021-07-09
相关资源
相似解决方案