欧拉积分(Genshin)
\(\Gamma\) 函数
引入、定义
在计算组合数式子的时候,我们时常会看到这样的式子:
\]
然而,我们不知道什么是负数或者什么其他数的阶乘。这里必须引入一个特殊函数——\(\Gamma\) 函数。
\]
有
\]
那么可以归纳得知
\]
根据上面的结果,我们可以对 \(\Gamma(z)\) 延拓至全体实数,除了负整数。
但是可以计算 \(\Gamma(z)\) 在 \(z=-n\) 处的留数:
\]
欧拉无穷乘积:
令
\]
有
\]
证明:
首先注意到
\]
然后两式相减。
=\lim_{n\to \infty}\left(\int_0^n(e^{-t}-(1-\frac t n)^n)t^{z-1}dt-\int _n^{\infty}e^{-t}t^{z-1}dt\right)\\
=\lim_{n\to \infty}\int_0^n\left[e^{-t}-(1-\frac t n)^n\right]t^{z-1}dt
\]
熟知不等式
\]
故
\le e^{-t}\left(1-e^t(1-\frac{t^2}{n^2})^n\right)
\]
根据伯努利不等式 \((1-x)^n\ge 1-nx(x\in [0,1])\)。
\]
于是
\le \lim_{n\to\infty} \left|\frac 1 n\int_0^ne^{-t}t^{z+1}dt\right|\\
=0
\]
证毕。
而在
\]
中,令 \(\frac{t}n\to t\),得到
\]
这个式子可以分部积分然后转为递推式,最终得到:
\]
尝试代入上面证明的式子:
=\lim_{n\to \infty}\frac{1}{z}\left(\prod_{i=1}^n\frac{i}{z+i}\right)\left(\prod_{i=1}^{n-1} (1+\frac{1}{i})^z\right)\\
=\frac{1}{z}\prod_{i=1}^{\infty}\left(\frac{k}{z+k}(1+\frac 1 k)^z\right)\\
=\color{red}{\frac{1}{z}\prod_{n=1}^{\infty}\left(\left(1+\frac{z}{n}\right)^{-1}\left(1+\frac 1 n\right)^z\right)}
\]
这是欧拉无穷乘积。
魏氏无穷乘积
欧拉无穷乘积得到
\]
考虑 \(n^z\)。
=\prod_{k=1}^n e^{\frac zk}\times \exp(z(\ln n-\sum _{k=1}^n\frac1k))\\
\lim _{n\to\infty}n^z=\prod_{k=1}^n e^{\frac zk}\times e^{-\gamma z}
\]
所以
\]
这是魏氏无穷乘积。
余元公式
考虑
\]
而有(根据 \(\cot\) 的展开式积分(?),\(\ln\sin x'=\cot x\))
\]
那么
\]
有 \(\Gamma(-z)=-z\Gamma(1-z)\),则:
\]
直接取 \(z=\frac 12\) 然后就可以顺便得到余元公式。
OI 的应用大概到这里就结束了。
据此可以得到一个重要结论:
\]
\(\Beta\) 函数
定义:
\]
性质 1:\(\Beta(p,q)=\Beta(q,p)\),显然。
性质 2:\(\Beta(p,q)=\dfrac{\Gamma(p)\Gamma(q)}{\Gamma(p+q)}\)。
证明:考虑
\text{令 }t=x^2,s=y^2\\
\Gamma(p)\Gamma(q)=4\int_0^{+\infty}x^{2p-1}e^{-x^2}dx\int_0^{+\infty}y^{2p-1}e^{-y^2}dy\\
=4\int_0^{+\infty}\int_0^{+\infty}x^{2p-1}y^{2p-1}e^{-(x^2+y^2)}dxdy\\
\text{令 }x=r\cos \theta,y=r\sin\theta\\
=4\int_0^{+\infty}e^{-r^2}r^{2(p+q)-1}dr\int _0^{\frac\pi 2}(\cos \theta)^{2p-1}(\sin \theta)^{2q-1} d\theta\\
\text{令 } t=r^2,x=\cos^2\theta\\
=-\int_0^{+\infty}e^{-t}t^{p+q-1}dt\int _1^0x^{p-1}(1-x)^{q-1} dx\\
=\int_0^{+\infty}e^{-t}t^{p+q-1}dt\int _0^1x^{p-1}(1-x)^{q-1} dx\\
=\Gamma(p+q)\Beta(p,q)
\]
那么 \(B(p,q)=\dfrac{\Gamma(p)\Gamma(q)}{\Gamma(p+q)}=\dfrac{(p-1)!(q-1)!}{(p+q-1)!}\)。
可以计算:取值 \([0,1]\) 的 \(n\) 个连续随机变量的 \(k\) 小。
首先设此随机变量为 \(X\)。设其概率密度函数为 \(f(x)\),概率分布函数为 \(F(x)=P(X\le x)\)。
=[xF(x)] _0^1-\int_0^1F(x)dx\\
=1-\int _0^1F(x)dx=\int_0^1(1-F(x))dx
\]
考虑 \(P(X\ge x)\),即至多有 \(m-1\) 个 \(<x\)。
\int _0^1(1-F(x))dx=\sum_{i=0}^{m-1}\binom ni\int_0^1x^i(1-x)^{n-i}dx\\
=\sum_{i=0}^{m-1}\Beta(i+1,n-i+1)\binom ni\\
=\sum _{i=0}^{m-1}\frac 1{n+1}=\frac{m}{n+1}
\]
ABC226H
考虑求出答案属于 \([x,x+1]\),且有 \(b\) 个落在中间的概率。
设 \(dp(a,b,c)\) 为 \(a\) 个 \(<x\),\(b\) 个 \(\in[x,x+1]\),\(c\) 个 \(>x+1\) 的概率,容易 dp。
利用上面的公式容易求答案。
// Problem: [ABC226H] Random Kth Max
// Platform: Luogu
// URL: https://www.luogu.com.cn/problem/AT_abc226_h
// Memory Limit: 1 MB
// Time Limit: 2000 ms
// Author:British Union
// Long live UOB and koala
//
// Powered by CP Editor (https://cpeditor.org)
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int maxn=105,mod=998244353;
int qp(int a,int b){
if(b==0)return 1;
int T=qp(a,b>>1);
T=T*T%mod;
if(b&1)return T*a%mod;
return T;
}
int inv[maxn],n,k,dp[55][55][55],l[maxn],r[maxn],E=0;
struct st{
int a,b,c;
st(int x=0,int y=0,int z=0){
a=x,b=y,c=z;
}
};
vector<st> sts[maxn];
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>k;k=n-k+1;
for(int i=1;i<=n;i++)cin>>l[i]>>r[i];
for(int i=1;i<=100;i++)inv[i]=qp(i,mod-2);
for(int i=0;i<=n;i++){
for(int j=0;j<=n;j++){
for(int k=0;k<=n;k++){
if(i+j+k<=n)sts[i+j+k].push_back(st(i,j,k));
}
}
}
for(int i=0;i<100;i++){
memset(dp,0,sizeof(dp));
dp[0][0][0]=1;
for(int j=1;j<=n;j++){
for(auto V:sts[j]){
int a=V.a,b=V.b,c=V.c;
if(r[j]<=i){
if(a)dp[a][b][c]=dp[a-1][b][c];
}
else if(l[j]>=i+1){
if(c)dp[a][b][c]=dp[a][b][c-1];
}
else{
int L=r[j]-l[j];
if(b)dp[a][b][c]+=dp[a][b-1][c]%mod;
if(a)dp[a][b][c]+=dp[a-1][b][c]*(i-l[j])%mod;
if(c)dp[a][b][c]+=dp[a][b][c-1]*(r[j]-i-1)%mod;
dp[a][b][c]=dp[a][b][c]*inv[L]%mod;
}
}
}
for(auto V:sts[n]){
int a=V.a,b=V.b,c=V.c;
if(a+b>=k&&a<k&&dp[a][b][c]!=0){
E+=(i+(k-a)*inv[b+1])%mod*dp[a][b][c]%mod;
E%=mod;
}
}
}
cout<<E<<endl;
return 0;
}
欧拉积分(Genshin)的更多相关文章
- hdu2588 GCD (欧拉函数)
GCD 题意:输入N,M(2<=N<=1000000000, 1<=M<=N), 设1<=X<=N,求使gcd(X,N)>=M的X的个数. (文末有题) 知 ...
- BZOJ 2705: [SDOI2012]Longge的问题 [欧拉函数]
2705: [SDOI2012]Longge的问题 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 2553 Solved: 1565[Submit][ ...
- BZOJ 2818: Gcd [欧拉函数 质数 线性筛]【学习笔记】
2818: Gcd Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 4436 Solved: 1957[Submit][Status][Discuss ...
- Euler-Maruyama discretization("欧拉-丸山"数值解法)
欧拉法的来源 在数学和计算机科学中,欧拉方法(Euler method)命名自它的发明者莱昂哈德·欧拉,是一种一阶数值方法,用以对给定初值的常微分方程(即初值问题)求解.它是一种解决常微分方程数值积分 ...
- COGS2531. [HZOI 2016]函数的美 打表+欧拉函数
题目:http://cogs.pw/cogs/problem/problem.php?pid=2533 这道题考察打表观察规律. 发现对f的定义实际是递归式的 f(n,k) = f(0,f(n-1,k ...
- poj2478 Farey Sequence (欧拉函数)
Farey Sequence 题意:给定一个数n,求在[1,n]这个范围内两两互质的数的个数.(转化为给定一个数n,比n小且与n互质的数的个数) 知识点: 欧拉函数: 普通求法: int Euler( ...
- 51Nod-1136 欧拉函数
51Nod: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1136 1136 欧拉函数 基准时间限制:1 秒 空间限制: ...
- FZU 2112 并查集、欧拉通路
原题:http://acm.fzu.edu.cn/problem.php?pid=2112 首先是,票上没有提到的点是不需要去的. 然后我们先考虑这个图有几个连通分量,我们可以用一个并查集来维护,假设 ...
- 欧拉函数 - HDU1286
欧拉函数的作用: 有[1,2.....n]这样一个集合,f(n)=这个集合中与n互质的元素的个数.欧拉函数描述了一些列与这个f(n)有关的一些性质,如下: 1.令p为一个素数,n = p ^ k,则 ...
- POJ 2337 Catenyms(有向图的欧拉通路)
题意:给n个字符串(3<=n<=1000),当字符串str[i]的尾字符与str[j]的首字符一样时,可用dot连接.判断用所有字符串一次且仅一次,连接成一串.若可以,输出答案的最小字典序 ...
随机推荐
- 最全ECharts 实战大全(速记版+资源)
hello,大家好,我是程序员海军,公众号已经快一年多没更新了,没更新的这段时间,我去哪了呢.这两年经历了很多事情,主要情感上占据大部分时间, 从失恋 - 谈对象 - 再失恋. 言归正传,近期我负责的 ...
- php之Opcache深入理解
PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的工作.而Opcache又是优化PHP性能不可缺失的组件,尤其是应用了PHP框架的项目中,作用更是明显. 1. 概述 ...
- docker-compose之基础(1)
安装: 1)经常因为由于网络原因,导致安装不成功 curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-c ...
- python之日志记录loguru
安装: pip install loguru 基础使用: from loguru import logger logger.debug("This is a debug...") ...
- Codeforces Round 832 (Div2)
Swap Game Alice 和 Bob 两个人在玩游戏. 有一个长度为 \(n\) 的序列 \(a\),Alice 和 Bob 两人轮流完成一个操作,Alice 先开始. 每个人可以将数列的第一个 ...
- ECDH秘钥交换算法——使用流程
目录 DH.ECDH 和 ECDHE 的关系 Flow chart Reference 背景: 对称加解密算法都需要一把秘钥,但是很多情况下,互联网环境不适合传输这把对称密码,有被中间人拦截的风险. ...
- vue ssr error: TypeError: Cannot read property 'replace' of undefined
在开发vue ssr应用时, yarn build yarn start 之后启动正常: info Server running at: http://0.0.0.0:6606 在访问页面时,发现页 ...
- 怎么实时更新echarts图标数据?
function getData(){ var request . nem XPHLHttpRequest () ; request . open("get",'http://lo ...
- python+playwright安装+使用vsocde运行代码
python虚拟环境 1.安装python,环境配置 2.修改pip镜像源 3.新增虚拟环境 注意路径,例子的路径是在python的目录下生成一个venv文件夹 进入venv文件夹,使用virtual ...
- DA14531芯片固件逆向系列(2)- 操作系统底层机制分析
首发于先知论坛 https://xz.aliyun.com/t/9186 概述 DA145x软件平台利用了由Riviera Waves许可的小型高效实时内核,内核提供以下功能: 任务创建和状态转换. ...