15145641

随笔分类 -  数学

1 2 下一页
Gym 101102B The Little Match Girl(贪心+规律)
摘要:这个题目的做法不止一种,solve1:每个数字使用的火柴棒都在2~7之间,而且是连续的,就是2-7之前没有空着的数。这样就有一个结论,在下界为l,上界为r的情况下,假设有n个数,那么火柴棒总数一定在n*l 与n*r之间,首先容易想到这个问题肯定是只关心火柴棒的总数,然后就是一个重新组合的问题,假设第 阅读全文
posted @ 2016-10-12 23:01 icode-xiaohu 阅读(278) 评论(0) 推荐(0)
HDU 5833 (2016大学生网络预选赛) Zhu and 772002(高斯消元求齐次方程的秩)
摘要:网络预选赛的题目……比赛的时候没有做上,确实是没啥思路,只知道肯定是整数分解,然后乘起来素数的幂肯定是偶数,然后就不知道该怎么办了… 最后题目要求输出方案数,首先根据题目应该能写出如下齐次方程(从别人那里盗的……): a11*x1 ^ a12*x2 ^ ... ^ a1n*xn=0 a21*x1 ^ 阅读全文
posted @ 2016-08-15 16:16 icode-xiaohu 阅读(489) 评论(6) 推荐(0)
HDU 5768 Lucky7 (容斥原理 + 中国剩余定理 + 状态压缩 + 带膜乘法)
摘要:题意:……应该不用我说了,看起来就很容斥原理,很中国剩余定理…… 方法:因为题目中的n最大是15,使用状态压缩可以将所有的组合都举出来,然后再拆开成数组,进行中国剩余定理的运算,中国剩余定理能够求出同时满足余膜条件的最小整数x,x在(1,M)之间由唯一值,M是各个除数的乘积,所有符合条件的解为ans 阅读全文
posted @ 2016-07-31 16:34 icode-xiaohu 阅读(432) 评论(0) 推荐(0)
LightOJ 1336 Sigma Function(数论 整数拆分推论)
摘要:》题意:给一个函数的定义,F(n)代表n的所有约数之和,并且给出了整数拆分公式以及F(n)的计算方法,对于一个给出的N让我们求1 - N之间有多少个数满足F(x)为偶数的情况,输出这个数。 》分析:来考虑F(x)为奇数的情况,给据题目中给我们的公式,,如果F(x)为奇数,那么这个多项式里面的任何一项 阅读全文
posted @ 2016-06-17 16:10 icode-xiaohu 阅读(1078) 评论(0) 推荐(1)
LightOJ 1341 Aladdin and the Flying Carpet(整数拆分定理)
摘要:分析:题目并不难理解,就是一些细节上的优化需要我们注意,我在没有优化前跑了2000多MS,优化了一些细节后就是400多MS了,之前还TLE了好几次。 方法:将整数拆分为质因子以后,表达为这样的形式,e1*p1 + e2*p2 + .... + en*pn,整数的所有约数的个数为(1+p1)*(1+p 阅读全文
posted @ 2016-06-14 19:09 icode-xiaohu 阅读(198) 评论(0) 推荐(0)
LightOJ 1370 Bi-shoe and Phi-shoe(欧拉函数)
摘要:题意:题目给出一个欧拉函数值F(X),让我们求>=这个函数值的最小数N,使得F(N) >= F(X); 分析:这个题目有两种做法。第一种,暴力打出欧拉函数表,然后将它调整成有序的,再建立一个新的表格记录满足条件的最小的欧拉值。 第二种,根据欧拉函数的性质,针对一个素数N,F(N) = N-1; 然后 阅读全文
posted @ 2016-06-14 12:42 icode-xiaohu 阅读(213) 评论(0) 推荐(0)
POJ 3292 Semi-prime H-numbers (素数筛法变形)
摘要:题意:题目比较容易混淆,要搞清楚一点,这里面所有的定义都是在4×k+1(k>=0)这个封闭的集合而言的,不要跟我们常用的自然数集混淆。 题目要求我们计算 H-semi-primes, H-semi-primes是 两个H-primes的乘积, H-primes的定义为:在这个集合中只能由1和它本来相 阅读全文
posted @ 2016-06-13 13:13 icode-xiaohu 阅读(186) 评论(0) 推荐(0)
POJ 1845 Sumdiv (整数拆分+等比快速求和)
摘要:当我们拆分完数据以后, A^B的所有约数之和为: sum = [1+p1+p1^2+...+p1^(a1*B)] * [1+p2+p2^2+...+p2^(a2*B)] *...*[1+pn+pn^2+...+pn^(an*B)]. 当时面对等比数列的时候,想到了求和公式,因为直接算超时了,但是带膜 阅读全文
posted @ 2016-06-10 21:04 icode-xiaohu 阅读(362) 评论(0) 推荐(0)
POJ 2635 The Embarrassed Cryptographer(大数求余)
摘要:题意:给出一个大数,这个大数由两个素数相乘得到,让我们判断是否其中一个素数比L要小,如果两个都小,输出较小的那个。 分析:大数求余的方法:针对题目中的样例,143 11,我们可以这样算,1 % 11 = 1; 1×10 + 4 % 11 = 3; 3×10 + 3 % 11 = 0;我们可以把大数拆 阅读全文
posted @ 2016-06-10 19:40 icode-xiaohu 阅读(229) 评论(0) 推荐(0)
POJ 2115 C Looooops (扩展欧几里德 + 线性同余方程)
摘要:分析:这个题主要考察的是对线性同余方程的理解,根据题目中给出的a,b,c,d,不难的出这样的式子,(a+k*c) % (1<<d) = b; 题目要求我们在有解的情况下求出最小的解,我们转化一下形式。 上式可以用同余方程表示为 a + k*c = (b) % (1<<d) <--> k*c = (b 阅读全文
posted @ 2016-06-10 18:19 icode-xiaohu 阅读(198) 评论(0) 推荐(0)
HDU 4828 Grids(卡特兰数+乘法逆元)
摘要:首先我按着我的理解说一下它为什么是卡特兰数,首先卡特兰数有一个很典型的应用就是求1~N个自然数出栈情况的种类数。而这里正好就对应了这种情况。我们要满足题目中给的条件,数字应该是从小到大放置的,1肯定在左上角,所以1入栈,这时候我们放2,如果我们把2放在了1的下面就代表了1出栈,把2放在上面就代表了2 阅读全文
posted @ 2016-06-09 14:18 icode-xiaohu 阅读(466) 评论(0) 推荐(0)
POJ 2084 Game of Connections(卡特兰数)
摘要:卡特兰数源于组合数学,ACM中比较具体的使用例子有,1括号匹配的种数。2在栈中的自然数出栈的种数。3求多边形内三角形的个数。4,n个数围城圆圈,找不相交线段的个数。5给定n个数,求组成二叉树的种数…… 此题就是第4个样例,是裸卡特兰数,但是这里牵扯的大数,可以使用java的大数类解决,但是我这里使用 阅读全文
posted @ 2016-06-08 23:08 icode-xiaohu 阅读(974) 评论(0) 推荐(0)
POJ 1365 Prime Land(整数拆分)
摘要:题意:感觉题意不太好懂,题目并不难,就是给一些p和e,p是素数,e是指数,然后把这个数求出来,设为x,然后让我们逆过程输出x-1的素数拆分形式,形式与输入保持一致。 思路:素数打表以后正常拆分即可。 注意:输入过程需要优化,我以前经常使用字符串模拟的方式,后来发现那种方法比较笨,还是下面的方法简洁; 阅读全文
posted @ 2016-06-08 19:17 icode-xiaohu 阅读(514) 评论(0) 推荐(0)
POJ 1061 青蛙的约会(欧几里得扩展)
摘要:题意:已知青蛙1位置x,速度m,青蛙2位置y,速度n,纬线长度为l,求他们相遇时最少跳跃次数。 思路:设最小跳跃次数为k,则(x + k*m) - (y + k*n) = q*l;经过整理得到k*(n-m) + q*l = x - y;此时k和l为变量。欧几里得扩展中有线性方程a*x+b*y = c 阅读全文
posted @ 2016-06-08 17:05 icode-xiaohu 阅读(283) 评论(0) 推荐(0)
POJ 2773 Happy 2006(欧几里德算法)
摘要:题意:给出一个数m,让我们找到第k个与m互质的数。 方法:这题有两种方法,一种是欧拉函数+容斥原理,但代码量较大,另一种办法是欧几里德算法,比较容易理解,但是效率很低。 我这里使用欧几里德算法,欧几里德算法又名辗转相除法,原先单纯的用于求最大公约数,这里也算是一个小小的拓展应用,这个题利用的欧几里德 阅读全文
posted @ 2016-06-06 18:57 icode-xiaohu 阅读(194) 评论(0) 推荐(0)
Hrbustoj 2266 Legendary Weights(辗转相除求最大公约数)
摘要:题意:这个题目的意思是给出一些砝码,问我们能不能根据这些砝码称量出任意重量的物品,最大公约数并不难求,难的在于如何建立这个模型。 思路:根据数论的基础知识,两个数a,b的最大公约数是a*x + b*y线性方程的最小正值(证明从略),所以很同意接受这个现实,当这些数的gcd为1的时候,线性方程可以表示 阅读全文
posted @ 2016-05-30 21:15 icode-xiaohu 阅读(482) 评论(0) 推荐(0)
ZOJ 3702 Gibonacci number(数学推导)
摘要:公式推导题,G(0) = 1,G(1) = t,给出一个 i 和 G(i),要求求出G(j)的值; G(0) = 0*t + 1 G(1) = 1*t + 0; 观察t的系数和常数值可以知道二者都遵循斐波那契的规律,设系数值为Y(n),常数值为X(n); G(2) = 1*t + 1; Y(0) = 阅读全文
posted @ 2016-05-13 19:10 icode-xiaohu 阅读(313) 评论(0) 推荐(0)
ZOJ 3696 Alien's Organ 概率论 泊松分布
摘要:看了好久的题,但还是看得一脸蒙圈,感觉完全无从下手,我的队友告诉我可能是正太分布之类的,但我感觉不太像,后来才听同学说是泊松分布,才恍然大悟,概率论刚刚学过这里不久,不禁感叹,学会了还要会用啊。。。 泊松分布的概率函数为:(我忽然发现一件日狗的事情,那就是我发的图片被和谐掉了……); (作者正在疯狂 阅读全文
posted @ 2016-05-13 18:51 icode-xiaohu 阅读(275) 评论(0) 推荐(0)
HDU 1883 Phone Cell(计算几何)
摘要:方法:选取一个点A,以点A为圆心做一个半径为r的圆,然后枚举另一个点B,以B为圆心做一个圆,如果这两个圆有交集,那我们在这个交集内选取一个点做半径为r的圆,这个圆就包括了A和B点,找到交集最多的区域并计算这个区域被覆盖的次数,把这个数加一就是最多能够覆盖的点个数,枚举所有的A,就可以得到最优解,剩下 阅读全文
posted @ 2016-05-03 22:42 icode-xiaohu 阅读(384) 评论(0) 推荐(0)
HDU 1887 Weird Numbers(负数的进制转化)
摘要:题目要求有两种情况,第一种from情况,正常输出即可,很简单.第二种是to情况,给一个数字,输出负进制R的原码,这个有点小麻烦...解决方法如下; 首先,把这个数n按正常方式展开,形式如下: .....(n/R^k) % R, (n/R^k-1) % R , (n/R^k-2) % R,...... 阅读全文
posted @ 2016-05-02 22:55 icode-xiaohu 阅读(228) 评论(0) 推荐(0)

1 2 下一页