这显然是一道概率的题目(废话)

设发\(f[i]\)表示买到第\(i\)张邮票还需要购买的期望次数,\(g[i]\)表示买到第\(i\)张邮票还需要期望花费的钱。

那么答案显然为\(g[0]\),我们来考虑怎么转移。

对于\(f[i]\),有三种情况:

  • 现在有\(\frac{i}{n}\)的几率会买到重复的邮票,即\(f[i] \times \frac{i}{n}\).
  • 现在有\(\frac{n-i}{n}\)的几率会买到新的邮票,即\(f[i+1] \times \frac{n-i}{n}\).
  • 花费\(1\)次买现在的邮票。

所以我们可以列出:\(f[i]=f[i] \times \frac{i}{n} + f[i+1] \times \frac{n-i}{n} +1\).

方程较复杂,我们来化简一下。

\(f[i] - f[i] \times \frac{i}{n} =f[i+1] \times \frac{n-i}{n} +1\)

\(f[i] \times \frac{n-i}{n} =f[i+1] \times \frac{n-i}{n} +1\)

$f[i] =f[i+1] \times \frac{n}{n-i} $

我们可以知道\(f[n]\)是等于\(0\)的,所以倒推即可。

那对于\(g[i]\)怎么办呢?

同理,\(g[i]\)的推导跟\(f[i]\)类似,也分为买到自己已有的邮票和没有的邮票两种情况,即:

$g[i]=(f[i]+g[i]+1) \times \frac{i}{n} + (f[i+1]+g[i+1]+1) \times \frac{n-i}{n} $

同时我们也来化简一下:

$g[i]=\frac{i}{n}f[i]+\frac{i}{n}g[i] + \frac{n-i}{n}(f[i+1]+g[i+1]) +1 \(
\)\frac{n-i}{n}g[i]=\frac{i}{n}f[i] + \frac{n-i}{n}(f[i+1]+g[i+1]) +1 \(
\)g[i]=\frac{i}{n-i}f[i] + f[i+1]+g[i+1] +\frac{n}{n-i} $

\(g[n]\)仍然为0,我们还是可以倒推

#include<bits/stdc++.h>
#define ll long long
#define inf 0x3f3f3f3f
#define RI register int
using namespace std;
const int N=1e4+2;
int n;double f[N],g[N];
inline double S(int x,int y){return (1.0*x)/(1.0*y);}
int main(){
scanf("%d",&n);
for(register int i=n-1;~i;--i){
f[i]=f[i+1]+S(n,n-i);
g[i]=S(i,n-i)*f[i]+g[i+1]+f[i+1]+S(n,n-i);
}printf("%.2lf",g[0]);
return 0;
}

题解 洛谷P4550/BZOJ1426 【收集邮票】的更多相关文章

  1. 洛谷P4550 【收集邮票】

    题目链接: 神仙题QAQ 题目分析: 概率期望题是不可能会的,一辈子都不可能会的QAQ 这个题也太仙了 首先明确一下题意里面我感觉没太说清楚的地方,这里是抽到第\(i\)次要\(i\)元钱,不是抽到第 ...

  2. 洛谷 P3800 Power收集

    题目背景 据说在红雾异变时,博丽灵梦单身前往红魔馆,用十分强硬的手段将事件解决了. 然而当时灵梦在Power达到MAX之前,不具有“上线收点”的能力,所以她想要知道她能收集多少P点,然而这个问题她答不 ...

  3. 题解 洛谷P5018【对称二叉树】(noip2018T4)

    \(noip2018\) \(T4\)题解 其实呢,我是觉得这题比\(T3\)水到不知道哪里去了 毕竟我比较菜,不大会\(dp\) 好了开始讲正事 这题其实考察的其实就是选手对D(大)F(法)S(师) ...

  4. 题解 洛谷 P3396 【哈希冲突】(根号分治)

    根号分治 前言 本题是一道讲解根号分治思想的论文题(然鹅我并没有找到论文),正 如论文中所说,根号算法--不仅是分块,根号分治利用的思想和分块像 似却又不同,某一篇洛谷日报中说过,分块算法实质上是一种 ...

  5. 题解-洛谷P5410 【模板】扩展 KMP(Z 函数)

    题面 洛谷P5410 [模板]扩展 KMP(Z 函数) 给定两个字符串 \(a,b\),要求出两个数组:\(b\) 的 \(z\) 函数数组 \(z\).\(b\) 与 \(a\) 的每一个后缀的 L ...

  6. 题解-洛谷P4229 某位歌姬的故事

    题面 洛谷P4229 某位歌姬的故事 \(T\) 组测试数据.有 \(n\) 个音节,每个音节 \(h_i\in[1,A]\),还有 \(m\) 个限制 \((l_i,r_i,g_i)\) 表示 \( ...

  7. 题解-洛谷P4724 【模板】三维凸包

    洛谷P4724 [模板]三维凸包 给出空间中 \(n\) 个点 \(p_i\),求凸包表面积. 数据范围:\(1\le n\le 2000\). 这篇题解因为是世界上最逊的人写的,所以也会有求凸包体积 ...

  8. 题解-洛谷P4859 已经没有什么好害怕的了

    洛谷P4859 已经没有什么好害怕的了 给定 \(n\) 和 \(k\),\(n\) 个糖果能量 \(a_i\) 和 \(n\) 个药片能量 \(b_i\),每个 \(a_i\) 和 \(b_i\) ...

  9. 题解-洛谷P5217 贫穷

    洛谷P5217 贫穷 给定长度为 \(n\) 的初始文本 \(s\),有 \(m\) 个如下操作: \(\texttt{I x c}\),在第 \(x\) 个字母后面插入一个 \(c\). \(\te ...

随机推荐

  1. 01_创建一个新的activity&activity配置清单文件

    今天开始学四大组件.今天是学Activity,然后是广播接收者,然后是服务,然后是内容提供者.四大组件,咱们一天一个.Activity就是跟用户交互的界面,大部分的应用都不会只有这么一个界面.创建多个 ...

  2. myeclipse 导入maven

    一安装maven 先安装jdk,配置JAVA_HOME 把下载的maven bin包,解压到指定目录,比如:D:\apache-maven-3.3.9-bin 配置maven的系统变量M2_HOME和 ...

  3. 适用于PHP初学者的学习线路和建议

    [导读] 这篇文章是围绕PHP的学习问题,之前介绍过<重磅资料!Github上的PHP资源汇总大全><深入探讨PHP类的封装与继承><PHP的学习规划建议>等对PH ...

  4. JS 数据类型入门与typeof操作符

    标准的数据类型划分: 基本类型: number(数字).string(字符串).undefined.boolean(布尔值).null(空对象) //空对象与非空对象,最大的区别就是不能进行属性操作 ...

  5. ROS学习笔记十一:创建URDF 文件并在RVIZ中查看模型

    Unified Robot Description Format,简称为URDF(标准化机器人描述格式),是一种用于描述机器人及其部分结构.关节.自由度等的XML格式文件. 一.创建第一个URDF文件 ...

  6. CF1140G Double Tree

    题解 首先如果我们要确定出每个\(dis_{i \to i+1 , i \in odd}\) 这个可以用两遍树形\(DP\)来解决 一遍是考虑走子树子树绕过来的 一遍是考虑从走祖先绕过来的 然后就可以 ...

  7. [USACO 2012 Open Gold] Bookshelf【优化dp】

    传送门1:http://www.usaco.org/index.php?page=viewproblem2&cpid=138 传送门2:http://www.lydsy.com/JudgeOn ...

  8. 创建一个长度是5的数组,并填充随机数。使用for循环或者while循环,对这个数组实现反转效果

    package day01; import java.util.Random; /** * 首先创建一个长度是5的数组,并填充随机数.使用for循环或者while循环,对这个数组实现反转效果 * @a ...

  9. WAMP配置虚拟目录

    1.启动wamp所有服务,输入localhost或localhost:端口号确保wamp环境正常无误. 2.设置httpd.conf 2.1打开文件:单击wamp在电脑右下角的图标=>wamp= ...

  10. swiper4实现的拥有header和footer的全屏滚动demo/swiper fullpage footer

    用swiper4实现的拥有header和footer的全屏滚动demo, <!DOCTYPE html> <html lang="en"> <head ...