上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 20 下一页
摘要: 题意是将一个整数N划分成不超过N个整数的和, 我们定义d[i][j]为j划分成不超过i个整数的和的方案数, 那么d[i][j] = d[i][j-i](全大于0) + d[i-1][j](不全大于0)。 答案就是d[N][N], 代码如下: #include <iostream> #include 阅读全文
posted @ 2016-02-25 01:06 xing-xing 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题意是让你求一个最小的N, 使得N!有M个0,N的阶乘中2的因子是远多于5的因子的个数, 因此我们统计出5的个数就知道其后面有几个0,对于一个数mid, mid!中5的因子的个数为mid/5 + mid/25 + mid/5^3 + ... 可以发现mid越大mid!中的5的个数越多, 因此我们可以 阅读全文
posted @ 2016-02-24 22:53 xing-xing 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 这个题的意思是给你两个数m, k, 让你求出与m互质的第k个数, 设想对于一个数r,我们可以求出小于等于r与m互质的数的个数, 那么我们就可以使用二分很快的求解。 假设我们把m唯一分解 m = p1^a1 * p2^a2 * ... * pi^ai, 那么小于等于r与m互质的数中不应该有p1 p2 阅读全文
posted @ 2016-02-24 21:33 xing-xing 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 这个题的意思是给你n+1个数, a1 a2 ... an an+1 其中 1<=ai<=M i!=n+1 an+1 = M, 求解存在x1..xn+1使x1*a1+x2*a2+x3*a3+..+xn+1*an+1 = 1的a序列的个数, 由数论部分知识我们可以知道上式要满足就得使(a1, a2, a 阅读全文
posted @ 2016-02-24 16:48 xing-xing 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 这道题的本质是将n个物品分成k堆, 每堆物品个数大于0小于等于m的方案数。 我们定义d[i][j]为前i堆物品总数为j的方案数, 那么d[i][j]的求解方法如下:其可化为d[i][j] = d[i][j-1] + d[i-1][j-1]+d[i-1][j-1-m]. 初始条件为d[0][0] = 阅读全文
posted @ 2016-02-24 14:11 xing-xing 阅读(843) 评论(0) 推荐(0) 编辑
摘要: 错排问题简单的理解就是{123..n}的排列中每个数字都不在原来位置上的排列, 设Dn为n个元素错排的数量, 那么Dn = (n-1)*(Dn-1+Dn-2)。其中D1=0, D2=1。关于错排的另外一个数学表达式就是n!*(1-1/1!+2/2!+...+(-1)^n/n!)。。这一题就是求Dn直 阅读全文
posted @ 2016-02-23 13:19 xing-xing 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 这个题目的意思是给你一串没有重复且递增的只包含a-z的字符串, 让你求出这个字符串排在第几位。 经过思考我们可以得出长度为n的字符串的个数为C(26, m), 然后我们要统计长度和给定的字符串相同但是字典序小于给定的字符串的个数。 对于一个序列a1a2...an来说, 我们逐个位置统计, 设xi为从 阅读全文
posted @ 2016-02-23 12:29 xing-xing 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 首先我们知道对于一个数x, 他的约数之积可以表示为f(x) = x^(d(x)/2) 其中d(x)为x的约束的个数。 当x很大的时候d(x)会变的非常大,很难将确切的d(x)算出来, 费马小定理告诉我们当p是质数的时候a^p = a(mod p), 当a与p互质的时候式子就变成了a^p-1 = 1 阅读全文
posted @ 2016-02-20 17:20 xing-xing 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 现在我们有x = b1(mod m1), x = b2(mod m2) ... x = bn(mod mn) 求解一个最小的使其满足上述方程,我们首先考虑x = b1 (mod m1), x = b2 (mod m2)这两个方程, 如果我们用这两个方程求出了一个解x0, 那么其一个解为x = x0 阅读全文
posted @ 2016-02-20 14:22 xing-xing 阅读(1023) 评论(0) 推荐(0) 编辑
摘要: 基础知识: 1.对于任意的ax+by=c, 如果我们知道有一组解x0, y0; 那么 x1 = x0+kb'(b'=b/gcd(a,b)), y1 = y0-ka'(a'=a/gcd(a,b)); 求解ax + by = c 的过程如下: 1.首先我们利用Egcd求出ax+by=g(g = gcd( 阅读全文
posted @ 2016-02-14 22:53 xing-xing 阅读(6572) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 20 下一页