【QBXT】学习笔记——Day9数学

今天要讲数学,莫名慌张TAT。
一看目录确实是很难很难啊。

======================分割线=====================

Day 9 1.23AM

先开始讲了极限,这一部分的内容在高等数学上就有,在此不多讲。
写一些OI中会”常用“的结论??
lim+(1+1n)n=lim+(11n)n=e
lim0sinxx=lim0tanxx=1
lim+nn=1
lim0arctanxx=lim0ex1x=1
等价无穷小
limxx0f(x)g(x)=1
等价无穷大
limxx0f(x)=limxx0g(x)=
这二者是对偶的。

高阶小量,一般用于分析时间复杂度,是在极限下的定义。
如果在OI里算时间复杂度可能会有一些误差,卡常什么的。

割线:取函数图象上两个点形成的直线。
切线:作割线的两个点无穷近时形成的直线。
切线的定义就是一个函数的导数。

导数的基本公式我也不写了,看高等数学就行了。
可以写一些有趣的导数:
(xx)=(exlnx)=(exlnx)(lnx+1)=xx(lnx+1)

洛必达法则:
xx0,f(x),g(x)0,xx0,f(x)g(x)=A
xx0f(x)g(x)=f(x)g(x)=A

话说求导也不能一直求下去的233
老师说导着导着就导炸了0.0

开根:
给出实数 y 和整数k,|y|<100,试求y的k次方根, y 最多两位小数。
我们可以二分,三分,牛顿迭代。注意精度与收敛速度要作权衡。
三分要求严格凸。
牛顿迭代:一个类似x2A的下凸函数,找一个较远点作切线,交 x 轴于x0然后垂直 x 轴作直线,找到函数在x0上的点继续作切线,如此往复。这样逼近的点就是函数与 x 轴的焦点,即y=0的位置,收敛了。
这个收敛的速度是很快的。当然不同情况下收敛速度不同。还依赖于初始选择点。
比如这题,如果这个A比较大时,我们刚刚开始选择的点的切线斜率十分大,这样子的话一开始迈的步子会很小,就会迭代很多次。
那么我们要解决这个问题就要在精度和收敛速度中作权衡,我们可以这样:

Ak=11Ak

然后就跑的飞快。

牛顿迭代可以用来做最大权闭合子图。实际上各种二分也是可以用牛顿迭代替代,是很快很快的。然而只是适用于下凸函数。

平面上两条不相交线段AB和CD,蚂蚁在AB上的移动速度为 v1 ,在CD上移动的速度为 v2 在其他平面速度为 v3 求A到D的最短时间。
大概是:
这里写图片描述

这题我们观察到,如果左边的点确定了,那么对于选取右边的点,是一个单峰函数。同样我们左边点的选取也是一个单峰函数。两个凸我们可以用三分套三分做。

接下来是一些我不是很会的东西,贴图片。
我们发现常数项的导数是0,因此我们可以随意添加常数项,所以求导的逆运算对应一组函数。(仅仅一组0.0)
这里写图片描述
对于上面的定积分的直观看法就是一个区间 [a,b] 函数的面积,积分是有向的0.0
这个东西就叫牛顿-莱布尼茨公式
这里写图片描述

这里写图片描述
这些应用真是令人绝望XD

这里补一些上课写在草稿本上关于积分的东西。
积分公式:

f(x)dx=F(x)+C

其中 F(x)=f(x)
先写一个简单的积分:
bax2dx=F(b)F(a)=13(b3a3)

Simpson :计算二次函数的一类积分,形如:

RL(ax2+bx+c)dx

这个东西可以用来计算重心233

然后讲了分部积分法则,
u=u(x)v=v(x) 是两个关于x的函数且各自具有连续导数,则:

d(uv)=udv+vduudv=d(uv)vdu

对两边积分,我们可以得到:
udv=uvvdu

如果将dv和du用微分形式写出,也可以得到:
uvdx=uvuvdx

举个栗子吧

bae2xdx=baxd12e2x=x12e2xba12e2xdx=x12e2x14e2x

这里写图片描述
这题十分厉害0.0,首先我们肯定可以想到将离散型和连续型分开处理。
那么离散性就是一个常用的斜率优化dp,但也是十分的难。
连续型的想法是贪心吃最大 ti ,一直到次大,然后合并。
计算的时候运用了微元的思想。
是下面这个样子的:
这里写图片描述

接下来是多元函数与偏导数。
多元函数:形如 f(x,y,z)=x2y+zx+cos(yz) 的函数(即有三个变元)
偏导数:对于多元函数的每一个变元进行求导,将其他变元看作常数。
比如上面这个函数我们我们对x求导有:

fx=2xy+zxlnz

函数的极值
一元函数: f(x)=0
多元函数: f(x)xi=0 ,意思是在各个方向都是0.

注意:以上求解所得为驻点,是否为极值点(甚至最值点)要另行判断。
并非所有函数可导,以及会存在有瑕点的函数,遇到时不可盲目套用公式。
然而就是盲目套用公式

传说中的简单题:
实现三种操作:
1.在平面加入一条直线
2.删除一条已有直线
3.求一个点到平面所有之间的距离平方和最小,并输出
n<=105
很容易求出 (x,y) 到直线 ax+by+c 的距离的平方:

(ax+by+c)2a2+b2

问题相当于求函数极值
f(x,y)=Ax2+By2+Cxy+Dx+Ey+F

我们动态维护 A,B,C,D,E,F
就是暴力维护偏导数,这个动态维护并(shi)不(fen)可怕。就是维护下面两个方程。
fx=fy=2Ax+Cy+D2By+Cx+E

线性回归——最小二乘法
给出平面上n个点,求最小均方误差线性拟合直线。 n<=105
y=ax+bmina,b(yiaxib)2
a=lxylxx,b=y¯ax¯
lxy=n1(xix¯)(yiy¯)
lxx=n1(xix¯)2

接下来是拉格朗日乘数法:
求解多元函数的最优值(最大化或最小化) f(x)1,x2xn)
并满足约束条件 gi(x1,x2xn)=0,i=1,2,,m

基本解法:
定义

=h(x1,x2,,xn,λ1,λ2,,λm)f(x1,x2,,xn)+λigi(x1,x2,,xn)

求解h的极值
其中对 λ 求偏导就是 gi

例子:有多项式

f=x2+2y2+3z2

要求满足约束
{x+y+z1=0100xyz1=0

那么我们有偏导函数

H(x,y,z,λ,μ)=x2+2y2+3z2+λ(100xyz1)+μ(x+y+z1)

那么
Hλ=100xyz1=0Hμ=x+y+z1=0Hx=2x+μ+100λyzHy=4y+μ+100λxzHz=6z+μ+100λxy

大概就是这样。

NOI2012骑行川藏:
n 段路,每段路长si,并有参数 ki,vi ,该人在每段路上匀速骑车。若骑车速度为 vi ,则阻力为 F=ki(vvi)2 设初始能量为E,求到达目的地的最短时间。
n<104,E<108,si<105,0<ki<1,100<vi<100
有一个贪心的想法,如果有能量肯定是跑快一点。
所以可以写出一些带等号的约束。
拉格朗日乘数法,就可以了。虽然我不会
这个的公式就不写了!
当然不一定要用拉格朗日乘数法,也可以用其它的神奇方法,当然我不会

然后是泰勒展开:
这里写图片描述

这里写图片描述

NOI2005反正切函数的应用
这里写图片描述
这里写图片描述

总的来说这个东西的作用就是:
万一你流落荒岛,无聊时算个 π 打发时光

Day9 1.23PM

51Nod多项式
n 次多项式f f(i)=ii+1i=0,1,2,,n ,现在试问对于 f(n+1) 是否唯一确定。
若确定,输出 f(n+1) (如果为整数直接输出;如果是分数 pq pq 互质,则输出 pqmod(109+7) ;否则输出至小数点后6位)
若不确定输出No。
n<=1015

这题就是拉格朗日插值法:
这个方法的思路是构造出一个式子来表示 f ,然后对于每个点,构造出只在这个点有值为1,而其他点值为0的一个函数,将这些函数组合起来就是f
这个东西和CRT的构造有点像。
由此也可以知道 n 次多项式可由n+1个不同点的取值唯一确定
所以我们有拉格朗日插值法的核心公式:

f(x)=i=1n+1yiΠki(xxk)Πki(xixk)

这个题怎么做呢?由于不想打公式了,就不做了。

讲到最难的了0 0概率与期望。先给出一些定义吧:
这里写图片描述
这里写图片描述
注意连续型是用一个概率函数表示的,一定有一个取值范围的询问。例如不能说取值为y的概率,而要说取值为x~y的概率。

P(AB) 的意思是事件AB同时发生的概率,要求AB不相关。
于是有全概率公式:

P(A)=P(ABi)

P(A|B)的意思是事件B发生时A发生的概率,
然后有全期望公式:
E(A)=E(E(A|B))

推导过程是这样的(这里倒着推):
(E(X|Y))=E(X)iE(X|Y=yi)P(Y=yi)i[kxkP(X=xk|Y=yi)]P(Y=yi)ikxkP(X=xk,Y=yi)kxkiP(X=xk,Y=yi)kxkPk

上面是离散型证明,连续型的证明更长了,我决定拍照,毕竟手推的。
上传好慢,我强行降低画质才传上来的
这里写图片描述

P(A,B)ABAB

然后知道这些我们还可以推导出Bayes公式:

P(A,B)=P(A)×P(B|A)=P(B)×P(A|B)P(B|A)=P(B)×P(A|B)P(A)

在“学”了这些东西以后我们来看看下面的题目。
ZJOI2015地震后的幻想乡
n个点m条边的简单连通无向图,每条边是[0,1]间的随机数,问最小生成树最大边的边权的期望 (n<11)
老师有毒,怎么一下子就做WJMZBMR神题
看数据范围显然是一个搜索或者装压dp之类的问题,这里肯定是状压。
但是知道这个东西并没有用

考虑最小生成树的定义,一定存在一个权 x ,使得如果不用大于等于这个值的边的话,这幅图不连通。那么我们就有一点奇奇怪怪的转化。
E(MSTe)=10P(MSTe>=x),这里积分表示MST中的边大于等于x的概率
P(MSTe>=x)=1P(xS)=P(xS)
左边的意思是MST上最大边权大于等于x的概率。

现在我们要求 P(xS)
那么我们任意固定一个点 u ,小于x的边不能使 S 连通,等价于小于x的边使包含 u 的某个连通子图S SS 的点不连通。
这样若 SSS 之间有 k 条边,我们计算一下概率。
=P(xS)(1x)k
我们现在要算 P(xS)
所以我们要在这里枚举一个 S ,状压dp搞一下。

这个做法的方程是一个多项式TAT,好像很难写,我们去%一下rqy可以得到新的做法:直接看blog吧

地震后的幻想乡+(出题人有毒!)
n个点m条边的简单连通无向图,每条边权是 [0,33] 的随机数,服从分布 f(x)=x2 问最小生成树最大边的边权的期望。
其实和上一题是一样的233。

简单题
一个机器人在 N×M 的方阵第 s t列,每次会随机选择不动/向左/向右/向下四种方案(不能越界),求它走到最后一行的概率。 n,m<1000

因为每一行只跟这一行和下一行有关,所以这个方程并不是很多。
然后我们自下而上递推的时候,下面那一行总是已经处理完的
E[i][j] 表示从 (i,j) 走到最后一行的期望步数,倒序求解。
首先 E[n][j]=0
那么 E[i][j]=14(E[i][j1]+E[i][j+1]+E[i][j]+E[i+1][j]])+1

上面是高斯消元,但如果直接消元是 O(n3)
冷静分析一下:
E[i][1]=x=13(E[i][2]+E[i+1][1]+x)+1
E[i][2]=ax+b=14(x+E[i][3]+ax+b+E[i+1][2])+1
E[i][3]=ax+b

所以:
E[i][j]>E[i][j+1]
E[i][m1]>E[i][m]=a′′x+b′′=13(a′′x+b′′+E[i+1][m]+E[i][m1])+1

然后我们通过解这最后一个方程,再逆推回去就可以搞定了。
这样复杂度是 O(n2) 的了。
这是一个有限状态马尔可夫链 (有限状态自动机)

自动机:(kengkengkengkeng)
自动机(OI中一般考虑)
E(x) 表示从 x 到终点的期望步数。
自动机上的期望dp一般都是倒着做的。

吃鱼
一个池塘有n条鱼,每天随机会有两条鱼i,j相遇, i 吃掉j的概率为 Aij ,¥j吃掉i 1-A_{ij} n<19$
状压dp+暴力转移即可。
状压一下每次存在鱼的集合就可以了。

这题也是一个自动机哦,是一个DAG

奇怪的实验
地上有无数条彼此平行,且间距为 w 的直线,小明总是在投掷一枚长度为L的针,求扔k次针,针碰到线的数学期望。
这里写图片描述

BZOJ4109 WF2015-Cutting Cheese(权限题)
一个边长为100的实心立方体中挖去 n 个不相交的求,要求将整个立方体沿水平方向切s1刀,使分出的 s 块体积相等,求这s块分别的厚度。 n<=10000,s<=100

二分答案,由于球互不相交所以体积很好算,不完整的球体积用定积分可以推出公式,完整的用球的体积公式。
球缺公式: π(3rh)h23

取数问题CF364D Ghd
给出数列 An ,试求出一个最大的正整数,使它整除至少一半 Akn<=105,Ak<=107
考虑枚举一个存在于最终答案的集合内的数x,这样子,可行的gcd的范围就变成了x的因子个数,在10^12以内,最多的因子个数只有6000多个。
对于其他元素,我们关注的只有它们和当前枚举的数x的gcd了。所以可以 O(nlogC) 地求出来。同时,我们可以记录 cnt[i] 表示和 x 的gcd为i的有多少个。显然只有6000级别个的 cnt 不会为0,我们可以非常轻松地记录下来。

现在我们直接枚举一下最终的答案是多少,只需要统计有多少个数含有这个因子即可。明显复杂度可以做到6000^2。

所以假如我们枚举了一个 x ,现在的复杂度是O(sqrt1012+nlogC+60002),看起来还是可以接受的。 假如我们随机到的位置存在于最优解中,那么我们一定能够得出最优解。 注意到我们随机一个位置有 12 的概率存在于最优解中。 多随机几次即可。

醉醺醺的幻想乡
来自WJMZBMR的又一道神题
听说没有题解
这里写图片描述
这里写图片描述
这个东西的精度写错了,应该是1e-5的。
这里写图片描述

这里写图片描述
这里写图片描述

然后今天真的很烧脑啊,也不讲太多了,可以溜了0.0
去刷一些之前的题目。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值