【Luogu1291】百事世界杯之旅(动态规划,数学期望)
2018-02-07 16:46
302 查看
题面
洛谷题解
设f[i]表示已经集齐了i个名字的期望现在有两种方法:
先说我自己的:
f[i]=f[i−1]+1+(1−p)(1∗p1+2∗p2+....)
其中p=i−1n
为什么,很简单
首先要多收集一个,期望+1是显然的
但是还可能一直买到了已经有的名字中的一个
有p的概率多买一个
p2的概率多买两个
这样无穷的算下去
然后对于后面那个式子
做两次错位相减(其实就是一个无穷级数)
推出
f[i]=f[i−1]+1+i−1n−(i−1)
然后递推就行了
第二种方法:
fdf的方法(感觉这种方法也很强呀)
设f[i]表示已经收集了i个
收集到n个需要的期望
f[i]=in(f[i]+1)+n−in(f[i+1]+1)
n−inf[i]=n−inf[i+1]+1
f[i]=f[i+1]+nn−i
初值:f[n]=0
倒着算即可
贴上我自己的代码
#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #include<algorithm> #include<set> #include<map> #include<vector> #include<queue> using namespace std; #define ll long long #define RG register inline int read() { RG int x=0,t=1;RG char ch=getchar(); while((ch<'0'||ch>'9')&&ch!='-')ch=getchar(); if(ch=='-')t=-1,ch=getchar(); while(ch<='9'&&ch>='0')x=x*10+ch-48,ch=getchar(); return x*t; } int n; int ws(ll x) { int ret=0; while(x)++ret,x/=10; return ret; } struct Num { ll a,b; void easy() { ll d=__gcd(a,b); a/=d;b/=d; } void output() { easy(); if(b==1){printf("%lld\n",a);return;} ll k=a/b;a-=k*b; int blk=ws(k),ss=max(ws(a),ws(b)); for(int i=1;i<=blk;++i)putchar(' '); printf("%lld\n",a); printf("%lld",k); for(int i=1;i<=ss;++i)putchar('-');putchar('\n'); for(int i=1;i<=blk;++i)putchar(' '); printf("%lld\n",b); } }f[50]; Num operator+(Num a,Num b) { ll d=a.b/__gcd(a.b,b.b)*b.b; return (Num){a.a*(d/a.b)+b.a*(d/b.b),d}; } Num operator*(Num a,Num b) { Num c=(Num){a.a*b.a,a.b*b.b}; c.easy(); return c; } int main() { n=read(); f[0]=(Num){0,1}; for(int i=1;i<=n;++i) { f[i]=f[i-1]+(Num){1,1}; f[i]=f[i]+(Num){i-1,n-i+1}; } f .output(); return 0; }
相关文章推荐
- 【Luogu1291】百事世界杯之旅(动态规划,数学期望)
- 【SHOI 2002】百事世界杯之旅 概率期望
- NOIP 2016 换教室 (luogu 1850 & uoj 262) - 概率与期望 - 动态规划
- 【洛谷1291】百事世界杯之旅
- [TopCoder SRM420 Div1 500pt RedIsGood]【数学期望】【动态规划】
- 【BZOJ2134】单位错选(数学期望,动态规划)
- 【HDU4336】Card Collector (动态规划,数学期望)
- 【BZOJ2134】单位错选(数学期望,动态规划)
- 【HDU4336】Card Collector (动态规划,数学期望)
- COGS 1224. [SHOI2002]百事世界杯之旅(期望概率)
- 【BZOJ1076】奖励关(动态规划,数学期望)
- 动态规划练习题:概率DP总结,求解数学期望或概率的题目
- 【BZOJ4872】分手是祝愿(动态规划,数学期望)
- 【BZOJ4872】分手是祝愿(动态规划,数学期望)
- 【SHOI 2002】百事世界杯之旅 概率期望
- 【BZOJ1415】【NOI2005】聪聪和可可(动态规划,数学期望)
- 【BZOJ1415】【NOI2005】聪聪和可可(动态规划,数学期望)
- 【HDU4652】Dice(数学期望,动态规划)
- 【HDU4652】Dice(数学期望,动态规划)
- Codeforces 28C Bath Queue - 动态规划 - 组合数学 - 概率与期望