数学公式
yqdjl6
这个作者很懒,什么都没留下…
展开
-
斯特林公式&1018 Big Number
斯特林公式是一条用来取n的阶乘的近似值的数学公式。一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特林公式十分好用,而且,即使在n很小的时候(除1以外),斯特林公式的取值已经十分准确。 求n!的位数 利用斯特林(Stirling)公式的进行求解。下面是推导得到的公式: res=(long)( (log10(sqrt(4.0*acos(0.0)n)) + n(log10(n)-log1原创 2017-07-16 14:40:10 · 294 阅读 · 0 评论 -
奇偶剪枝&1010 Tempter of the Bone
Tempter of the BoneProblem Description The doggie found a bone in an ancient maze, which fascinated him a lot. However, when he picked it up, the maze began to shake, and the doggie could feel the gro原创 2017-07-16 14:52:37 · 161 阅读 · 0 评论 -
康拓展开
康拓展开的应用就是计算一个状态在全排列状态中的位置问题 例如ans[5]={1,2,3,4}; 然后把ans全排列以后生成一个表,这时你想求{2,4,3,1}这个状态在全排列中处于第几个,就可以用康拖展开int fac[]={1,1,2,6,24,120,720,5040,40320,362880};int cantor(int s[]) {//先把s的所有情况打个表,然后再计算s这个数列的c原创 2017-08-01 18:56:35 · 153 阅读 · 0 评论 -
错排公式
错排问题:考虑一个有n个元素的排列,若一个排列中所有的元素都不在自己原来的位置上,那么这样的排列就称为原排列的一个错排。 错排的递推式: D(n) = (n-1) [D(n-2) + D(n-1)] 特殊地,D(1) = 0, D(2) = 1. 简化公式:D(n) = [n!/e+0.5]原创 2017-08-02 20:59:21 · 262 阅读 · 0 评论 -
两类strling数
strling数在参加的好几次比赛中都能遇到,就来总结一下 第一类strling数: 我们一般遇到的都是第一类无符号数,也就是求n个不同元素构成m个圆排列的方案数, 其递推式是: s(n, k) = s(n - 1, k - 1) + (n - 1) * s(n - 1, k) , 1 <= k <= n - 1 其中S(n, 0) = 0; n >= 1; S(n, n) = 1;原创 2017-07-07 02:01:38 · 827 阅读 · 0 评论 -
递推式模板(黑科技)
有一个递推式的模板,你给的值越多,递推式得出的结果越准确 据说是杜教的模板#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#include <vector>#include <string>#include <map>#include <set>#include <cassert>usi原创 2017-08-31 13:48:34 · 1352 阅读 · 0 评论 -
归并排序求逆序对
以前一直以为很难,学了一下很简单#include<bits/stdc++.h>using namespace std;using LL = int64_t;const int maxn=1e5+5;const int mod=1e9+7;const int INF=0x3f3f3f3f;const LL LLINF=1e14;const double pi=aco...原创 2018-05-11 15:22:51 · 117 阅读 · 0 评论