数论&&组合数学
文章平均质量分 57
大米GoGoGo
Fighting Fighting Fighting
展开
-
stirling数
在组合数学,Stirling数可指两类数,都是由18世纪数学家James Stirling提出的。Stirling数有两种,第一类和第二类Stirling数,它们自18世纪以来一直吸引许多数学家的兴趣,如欧拉、柯西、西尔沃斯特和凯莱等。后来哥本哈根(Copenhagen)大学的尼尔森(Niels Nielsen,1865-1931)提出了"Stirlingschen Zahlen er转载 2012-08-18 11:05:33 · 975 阅读 · 0 评论 -
hdu4235 Co-prime(求互质数的个数)
//一般我们求1~n中与n互质的数的个数都用欧拉φ函数:φ(n)是所有小于n的正整数里,和n互素的整数的个数。n是一个正整数。 欧拉证明了下面这个式子:如果n的标准素因子分解式是p1^a1*p2^a2*……*pm^am,其中众pj(j=1,2,……,m)都是素数而且两两不等。则有 φ(n)=n(1-1/p1)(1-1/p2)……(1-1/pm)但如果n比较大或者是求1~m中与n互原创 2012-09-24 21:14:26 · 3112 阅读 · 1 评论 -
欧拉函数
欧拉函数 对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。例如euler(8)=4,因为1,3,5,7均和8互质。 Euler函数表达通式:euler(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…(1-1/pn),其中p1,p2……pn为x的所有素因数,x是不为0的整数。euler(1)=1(唯一和1互质的数就是1本身)。转载 2012-09-24 22:20:57 · 680 阅读 · 0 评论 -
数论总结1
费马小定理: 假如p是质数,且(a,p)=1,那么 a^(p-1) ≡1(mod p) 假如p是质数,且a,p互质,那么 a的(p-1)次方除以p的余数恒等于1。该定理的逆否命题也成立,即a^(n-1)mod n!=1,则n为合数.但是费马定律的逆命题就不一定成立了,比如当a=4,n=15时,4^14mod15=1,但是4不是素数而是合数.快速模取幂 数论计算中经常出原创 2012-09-22 14:59:08 · 379 阅读 · 0 评论 -
hdu3400 Line belt
单峰函数求极小值问题。。。果断三分法。。。在ab段找一点m1,在cd段找一点m2,则 t=length(a,m1)/p+length(m1,m2)/r+length(m2,d)/q;在外层对ab段三分,在内层对cd三分,求最小值。#include#include#include#include#include #define esp 1e-6 //双三分法(两原创 2012-09-15 00:40:48 · 369 阅读 · 0 评论 -
hdu3714Error Curves
求f(x)的最小值,f(x)等于所有s(x)中的最大值。。。由于条件判断我用的两逼近值之差mv-mmv,故循环应使用do-while,刚开始用的while,wa了好多次。。。#include#include#include#include#include #define esp 1e-9 //三分法求函数极值int n,a[10010],b[10010],c[10原创 2012-09-14 21:29:11 · 650 阅读 · 0 评论 -
三分法——求解凸性函数的极值问题
二分法作为分治中最常见的方法,适用于单调函数,逼近求解某点的值。但当函数是凸性函数时,二分法就无法适用,这时三分法就可以“大显身手”~~ 如图,类似二分的定义Left和Right,mid = (Left + Right) / 2,midmid = (mid + Right) / 2; 如果mid靠近极值点,则Right = midmid;否则(即midmid转载 2012-09-14 20:04:22 · 439 阅读 · 0 评论 -
hdu 3625 Examining the rooms
看了题解才知道是第一类stirling数。。。将n个元素组成k个环排列。。。#include#include#include#includelong long f[30][30];long long multi(int n) //总得情况数(全排列)n!{ long long sum=1; while(n原创 2012-09-07 23:21:21 · 534 阅读 · 0 评论 -
hdu4372(count buildings)
这里用到了第一类stirling数:s(n,k)=s(n-1,k-1)+(n-1)*s(n-1,k)(将n个元素进行k个环排列——k个元素的环排列等于k-1个元素的全排列),这里要将n-1(最高的那栋楼除外)栋楼分成f-1和b-1个小组,并在各小组内部进行环排列(因为每组的最高的那个位置一定在最左边,是确定的,其实就是对每组的剩下的进行全排列)。接着用到了组合数:c(n,k)=c(n-1,k-原创 2012-08-18 14:46:34 · 534 阅读 · 0 评论 -
hdu1695GCD(欧拉函数+容斥原理)
看了大牛的代码才做出来的。。。由于a=c=1,故不妨让b为小的端点,d为大的端点。。。枚举[1,d]中每个i,看有多少个[1,min(i,b)]中的数与i互质。当ib时,就得用容斥定理(用dfs写较简洁),找出小于等于b的数中与i互质的数的个数(b减去与i不互质的数的个数)。#include#include#include #include#define M 100005原创 2012-09-25 21:10:59 · 800 阅读 · 0 评论