P5147-数学-随机数生成器
P5147-数学-随机数生成器
(洛谷第一篇题解说这是高一数学题,新高二感觉到被吊打)
我们设work(x)的期望值为\(f_x\)
注意\(f_1\)是边界。不过对下列式子没有影响。原因参照必修的数列
那么\(\displaystyle f_n=1+\frac{1}{n}\sum_{i=1}^{n}f_i\)
移项得到\(\displaystyle f_n=\frac{n}{n-1}+\frac{1}{n-1}\sum_{i=1}^{n-1}f_i\)
记\(S_x\)为\(\sum_{i=1}^{x}\)
原式即为
\(\displaystyle f_n=\frac{n}{n-1}+\frac{1}{n-1}S_{n-1}\)
通过高一的数学知识化简一下
\(\displaystyle f_n=1+\sum_{i=1}^{n-1}\frac{1}{i}\)
发现这玩意就是个(伪)调和级数加1.
推出了通项公式!可以\(O(1)\)求解了……吗?
看看n的范围然后会发现直接求后面这堆东西会死人的。
但是,调和级数我们还是懂的。当n趋近于正无穷时,后面这堆东西近似于调和级数。那么我们把它就当做是好了。
欧拉常数
\(\gamma=0.57721 56649 01532 86060 65120 90082 40243 10421 59335\)
我们知道了欧拉常数,然后就解决了。
#include<cstdio>
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int n;
double ans=0;
scanf("%d",&n);
if(n<100000)for(int i=1;i<n;i++)ans+=1.0/i;//范围较小时会有较大误差,暴力即可
else ans=log(n)+0.577215664901532;
printf("%.5f",n==1?0:ans+1);
return 0;
}
P5147-数学-随机数生成器的更多相关文章
- 解密随机数生成器(二)——从java源码看线性同余算法
Random Java中的Random类生成的是伪随机数,使用的是48-bit的种子,然后调用一个linear congruential formula线性同余方程(Donald Knuth的编程艺术 ...
- [nRF51822] 16、nRF51822的随机数生成器,及随机数生成器的一些知识(可以帮您补补随机数发生器的知识)
1.前言 随机数生成器在通信.加密.图像传输等领域应用广泛,且一般起到关键性作用.我在最近设计的一个近场射频通信协议的碰撞避退算法的过程中,便对此有深深体会. 2.伪随机数发生器 随机数发生器一般包括 ...
- 【BZOJ3122】[Sdoi2013]随机数生成器 BSGS+exgcd+特判
[BZOJ3122][Sdoi2013]随机数生成器 Description Input 输入含有多组数据,第一行一个正整数T,表示这个测试点内的数据组数. 接下来T行,每行有五个整数p,a,b, ...
- 【原创】开源Math.NET基础数学类库使用(13)C#实现其他随机数生成器
本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 开源Math.NET基础数学类库使用总目录:[目录]开源Math.NET基础数学类库使用总目录 前言 ...
- 【BZOJ-3122】随机数生成器 BSGS
3122: [Sdoi2013]随机数生成器 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 1362 Solved: 531[Submit][Sta ...
- BZOJ-2875 随机数生成器 矩阵乘法快速幂+快速乘
题目没给全,吃X了... 2875: [Noi2012]随机数生成器 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 1479 Solved: 829 ...
- [BZOJ3671][UOJ#6][NOI2014]随机数生成器
[BZOJ3671][UOJ#6][NOI2014]随机数生成器 试题描述 小H最近在研究随机算法.随机算法往往需要通过调用随机数生成函数(例如Pascal中的random和C/C++中的rand)来 ...
- NOI2014 随机数生成器
随机数生成器 [问题描述] 小H最近在研究随机算法.随机算法往往需要通过调用随机数生成函数(例如Pascal中的random和C/C++中的rand)来获得随机性.事实上,随机数生成函数也并不是真正的 ...
- 【BZOJ 3122】 [Sdoi2013]随机数生成器 (BSGS)
3122: [Sdoi2013]随机数生成器 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 1442 Solved: 552 Description ...
随机推荐
- Kettle通过Http post请求webservice接口以及结果解析处理
kettle中有两种方式请求webservice服务,一个是Web服务查询,但是这个有缺陷,无法处理复杂的需求,遇到这种情况就需要用Http post来处理了. 网上也有很多关于Http post请求 ...
- mybatis学习——properties属性实现引用配置文件
Mybatis核心配置文件中有很多的配置项,配置文档的顶层结构如下: *注意:配置项的顺序不能颠倒,如果颠倒了它们的顺序,在MyBatis的自启动阶段会发生异常,导致程序无法运行. propertie ...
- android小技巧之点击两次退出活动
通常在主活动中可以设置连击退出程序,下面通过代码来实现这一功能: @Override//按两次back键退出public boolean onKeyDown(int keyCode, KeyEvent ...
- Docker系列——Grafana+Prometheus+Node-exporter钉钉推送(四)
近期搭建的服务器监控平台,来进行一个总结.主要分为监控平台的搭建.告警中心的配置以及消息的推送.推送的话,支持多种终端.具体详细可查看之前的博文,在这里罗列下,方便查看. Docker系列--Graf ...
- BLO
BLO 内存限制:162 MiB 时间限制:1000 ms 标准输入输出 题目描述 Byteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ...
- 测试开发之网络篇-IP地址
IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异.这里介绍一下目前广泛使用的IPv4版本. IP地址使用一种统一的格式,为互联 ...
- RobotFramework + Python 自动化入门 一 (从这里开始)
一.环境搭建 1. 安装Python Python3会自动配置path,安装pip工具(python包安装和管理工具) 2. 安装robotframework library cmd窗口安装命令: p ...
- [翻译]在GC上加入DPAD
本文90%通过机器翻译,另外10%译者按照自己的理解进行翻译,和原文相比有所删减,可能与原文并不是一一对应,但是意思基本一致. 译者水平有限,如果错漏欢迎批评指正 译者@Bing Translator ...
- CCF CSP认证考试在线评测系统
关于 CCF CSP 认证考试在线评测系统 CCF CSP 认证考试简介 CCF 是中国计算机学会的简称.CCF 计算机软件能力认证(简称 CCF CSP 认证考试)是 CCF 于 2014 年推出, ...
- 模拟windows10计算器的实现
用户界面部分: import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.HashMap; impo ...