数论
文章平均质量分 67
wmn_wmn
这个作者很懒,什么都没留下…
展开
-
杭电 数论题
1164 1211 1215 1222 1286 1299 数学题:Math_基础题:1000、1037、1089、1090、1091、1095、1170、1283、Math_求和:100原创 2011-09-12 10:38:11 · 874 阅读 · 0 评论 -
NYOJ 520 数论
题意很简单。主要说下思路:首先把100万以内的素数打出来,然后存到prime数组里,存的时候用另一个数组记录该素数是第几个素数。这题卡时间的地方主要在分解数的地方,把一个数分解为素数的积,只需要分解到该数的sqrt(n)处即可。注意这个地方就可以了。题目:最大素因子时间限制:1000 ms | 内存限制:65535 KB难度:2描述i c原创 2012-04-09 13:17:40 · 853 阅读 · 0 评论 -
浙江省省赛J题
一道数论题,也是道简单题,就是个扩展欧几里得,一直没写过扩展欧几里得的代码,这次还是在朱神的帮助下才写出来的,不过高兴的是1A了,,题目:Modular InverseTime Limit: 2 Seconds Memory Limit: 65536 KBThe modular modular multiplicative inverse of an inte原创 2012-04-14 19:36:09 · 2890 阅读 · 0 评论 -
NYOJ 478 数论
求一个数的因子和的问题,刚开始TLE了几次,后来终于想明白可以再筛素数的时候把所有的结果都算出来,结果又wa了,仔细检查了下,才明白里面有数据会超int,后来又改为long long,之后就过了。我的代码跑了280多ms,太挫。后来看了看浩哥的代码,那是一个牛叉啊。。题目:月老的烦恼(1)时间限制:1000 ms | 内存限制:65535 KB难度:3原创 2012-05-06 15:05:11 · 916 阅读 · 0 评论 -
UESTC oj Division by 3 数论
这是群赛上的一道题目,是道数论题。题意比较简单,就是给你一种这样的数,1,12,123,1234,12345,123456.。。。。。。求第a个这样的数到第b个这样的数之间,有多少个数能被3整除。思路很简单,第n个数能否被3整除,只需要从1一直加到n即可。注意,这里的加,是指把某个数的每一位加起来,这是根据一个数能否被3整除的性质所决定的。但是若要循环的话,由于数据范围太大,会超时。 我原创 2012-05-19 11:27:21 · 1036 阅读 · 0 评论 -
求i从1到n的gcd(n,i)的和
刚才rihkddd神给我讲解的一个数论问题,为了防止以后忘记,写一下吧。题目是让求i从1增加到n的gcd(n,i)的和,我们假设gcd(n,i) = k,则gcd(n/k,i/k) = 1。即假设gcd(n/k, x ) = 1,则gcd(n,x*k) = k。gcd(n,i) = k,k的取值是确定的,即n的所有因子,所以,满足gcd(n/k,x) = 1个x的个数乘以k即为所有满足gcd(原创 2012-07-10 18:20:10 · 6038 阅读 · 1 评论 -
Idempotents 数论
来源:http://acm.hust.edu.cn:8080/judge/contest/view.action?cid=9927#problem/H题意:给你一个n,n是两个不同素数的乘积。让求小于等于n的x,满足x*x %n = x%n。思路:其实就是求x * (x-1) 是n的倍数。我们可以把n分解成两个素数的乘积,即n = p * q,若x * (x - 1) 是n的倍数,则一定是原创 2012-07-23 09:06:23 · 568 阅读 · 0 评论 -
判定被7整除的简易方法 转自Matrix67
判断一个数的整除性对于某些除数来说是一件非常容易的事,比如2、3、4、5、6、8、9、10、11、12、15…… 但是对于7来说一直是一个难题,而判定是否被7整除在数字运算中又比较常用。我刚看到一种判定能否被7整除的方法,在这里写一下。 比如,我们要看86415能否被7整除。首先我们把它从个位开始往左边走两个数字一组划分开来,这样,86415就划分成8 64 15;然后,从左开原创 2012-08-08 11:39:30 · 1436 阅读 · 0 评论 -
Ural 1095 Nikifor 3 数论
来源:http://acm.timus.ru/problem.aspx?space=1&num=1095题意:给你一个数,其中包含数字1 2 3 4,让你对这个数的数字重新排列,使其目的数能被7整除。思路:经过计算发现,1234有24种全排列,对7取余,其中包含了0,1,2,3,4,5,6这7种情况。所以,只需要计算除去1 2 3 4以外的数对7取余的结果,然后让后面的1234对其补余即可原创 2012-08-08 11:36:21 · 802 阅读 · 0 评论 -
POJ 1061 青蛙的约会 扩展欧几里得http://poj.org/problem?id=1061
来源:http://poj.org/problem?id=1061题意:中文题。。。思路:由题意易知,posx + vx * t – posy – vy * t = k * L,也就是说解该方程的解。该方程经过化简后可以写为 t*(vx - vy) – k * L = posy – posx,进一步化简为 k*L + t * (vy- vx) = posx – posy,L和(vx - v原创 2012-07-28 09:21:46 · 1134 阅读 · 0 评论 -
POJ 2155 C Looooops
来源:http://poj.org/problem?id=2115题意:就是说一个for循环,变量从a开始,每次增加c,问经过多少次增加能够 (a+c*n) % 2^k = b%2^k,即同余方程。经过变形后可以变成裸的扩展欧几里得思路:用扩展欧几里得解就可以了。。代码:#include #include #include using namespace std;type原创 2012-07-28 19:22:10 · 1174 阅读 · 0 评论 -
HDU 1576 A/B 数论水题
来源:http://acm.hdu.edu.cn/showproblem.php?pid=1576题意:中文题。。。思路:设A = k * 9973 + n ,A/ B = C, C = P * 9973 + x,x即为我们所求的答案。易知,A = k* 9973 + n =B * P * 9973 + B * x,化简后得k * 9973 = B * P * 9973 + B * x原创 2012-07-30 09:43:44 · 2215 阅读 · 0 评论 -
POJ 2142 The Balance 扩展欧几里得
题意:有两种类型的砝码,每种的砝码质量a和b给你,现在要求称出质量为d的物品,要求a的数量x和b的数量y最小,以及x+y的值最小。思路:是扩展欧几里得的应用。设ax + by = 1,求出x和y的值,因为我们要求ax + by = n的解,所以需要将x y的值乘以n。因为题目中要求x和y的值都要为正,然而,易知,ax + by = 1在a和b都为正数的情况下,x 和 y必有一个数是负的。因原创 2012-07-30 09:07:12 · 3007 阅读 · 1 评论 -
ZOJ 3622 Magic Number 月赛水题
来源:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4768题意:就是有这样一类数,该数放在任何数的右面后形成的新数对原数取余为0。例如2,无论2放在什么数的右面,形成的数总是偶数,因此对2取余都为0.给出m和n求两者之间有多少个这样的数。思路:这样的数 是有规律的,根据题目给出的范围,枚举出所有的数,再判断即可。原创 2012-07-30 09:26:49 · 2658 阅读 · 0 评论 -
FZU 1402 猪的安家 中国剩余定理
来源:http://acm.fzu.edu.cn/problem.php?pid=1402题意:中文~思路:就是中国剩余定理的模板题,本来是做poj上的一道题,那道题没要求两辆不互质,还要转化成两辆互质的,还不会,,,先把这道题水过了。。代码:#include #include #include using namespace std;#define CLR(arr,原创 2012-07-30 14:54:11 · 1816 阅读 · 7 评论 -
杭电 1395 2^x mod n = 1 暴力题
一直以为有什么高深的算法,,没想到暴力一下就能过。。这太悲剧了。可以用欧拉定理证明其存在性。欧拉定理是这样的,如果a和m互质且a2^x mod n = 1Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5974 A原创 2012-03-20 08:35:16 · 3822 阅读 · 0 评论 -
杭电1719 简单数学题
这道题经过推导之后可以得到n=2^x*3^y-1,凡是形如这样的数都是friend数,,之后程序就简单了,需要注意的是0不是friend数。。。。题目:FriendTime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 998原创 2012-03-16 07:12:01 · 939 阅读 · 0 评论 -
杭电 1164 数论
一道简单的数论题,就是把任意一个数分解成几个质数之积。。。。。。题目:Eddy's interest is very extensive, recently he is interested in prime number. Eddy discover the a原创 2011-09-12 11:14:00 · 1119 阅读 · 0 评论 -
杭电 1017 数论
一道数论水题,数据比较小,所以直接枚举就可以过,,烦人的是这道题的输出格式,,,让我pr了好几次,,终于ac。。。。。题目:Given two integers n and m, count the number of pairs of integers (a,b)原创 2011-09-13 21:22:41 · 1255 阅读 · 0 评论 -
数论之数字根 杭电1013
做这道题就有一种感觉,,数学真是奇妙,,在网上查了一下,才知道数字根有那么多奇妙的性质。不过,对于这道题我却是不太理解,,主要是不会证明为什么数字根就是各个位加起来对9取余,,我试着用同余证了一下,,可惜,,没证出来,,还希望高手指点。题目:The digital root原创 2011-09-20 19:21:32 · 1315 阅读 · 1 评论 -
NYoj 416 数论的一个小知识
话说这道题是昨天月赛的题目,是一个简单的数论题。可悲的是,当时竟然不知道这个结论,比赛过后,才知道这道题有多么的水。昨天的比赛,那就是一个悲剧。剩下一个半小时左右,连一次也没提交。。。。。。。悲催。。。。题目:Ten mathematicians are flying o原创 2011-09-26 10:59:27 · 1017 阅读 · 0 评论 -
数论之求欧拉函数
简单的求欧拉函数的值,留下来做个模板。。。。。。。。。。题目:Given n, a positive integer, how many positive integers less than n are relatively prime to n? Two in原创 2011-09-24 09:10:46 · 780 阅读 · 0 评论 -
杭电 3835 R(N)
记得暑假时写这道题时没写出来,,纠结了好久,一直超时,,这次写这道题,,花了一个小时ac了,,,,这算是进步了??????题目:R(N)Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1045 Accepted Sub原创 2011-11-14 11:28:08 · 729 阅读 · 0 评论 -
最大公约数 数论
是关于数论中的一个关于最大公约数的证明,,,是一个简单问题,不过暑假之前我还是不会的,今天看数论时看到了这个问题,,特来和大家分享一下。设m=x*n+r;则gcd(m,n)=gcd(n,r);证明如下:设d=gcd(m,n), dd=gcd(n,r); 则d|m, d|n, d|(x*n+r),因为d|n,所以可推出d|r,即d是r和n的公约数,所以d小于等于dd,,,同理可证原创 2011-09-15 19:51:52 · 682 阅读 · 0 评论 -
杭电 3833 数论
话说这道题是昨天中午看的,,,当时看了后想了个n*n的方法,,,悲剧的TLE了,,,后来又和几个队友讨论了一下,,也没想出来什么好的方法,,想的都是n*n的,,悲催,,就这样,,从中午一直TLE到昨天晚上10点,,,,今天早上来了后,看了看其他人的思路,,,,,ac了,,不过也是n*n的复杂度。。。。暴力也需要技巧啊,,如果暴力的够艺术,,就能ac。。。。题目:YY's new probl原创 2011-11-15 09:21:21 · 938 阅读 · 0 评论 -
杭电2855 Fibonacci Check-up
是一道数论方面的题,融合了矩阵二分幂和多项式定理以及斐波那契数列的一道题。先用公式可以推出来,之后用矩阵二分幂就可以了。关于矩阵二分幂,实际上就是矩阵的乘法,由于矩阵满足结合律,故可以用平方来计算,就达到了log(n)的复杂度,由于n可能为奇数,可能为偶数,所以当n为奇数时,还需要乘以初始矩阵。ac代码:#include #include #include usi原创 2012-02-15 08:45:01 · 986 阅读 · 0 评论 -
杭电 2854Central Meridian Number 完全不懂的数论
此题真乃是数论中的acm,acm中的数论,神题!!!!!!!!!一大堆神马公式的,最后推出来一个特神的公式,完全看不懂,弱爆了。。。。。。。题目:Central Meridian NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi原创 2012-02-16 10:33:12 · 1530 阅读 · 1 评论 -
杭电2841 容斥定理求1到n之间和x互质的数的总数
第一次写容斥定理,完全不懂啊,,,弱爆了。。。。。话说这道题最后就是判断横坐标和纵坐标两个值是否互质,如果互质则可以看到,否则看不到。题目:Visible TreesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 593原创 2012-02-25 11:18:25 · 1622 阅读 · 0 评论 -
杭电 2824 筛法求欧拉函数的和
此题可以用筛法求欧拉函数,其核心思想就是不断的去除某个数的质因数,和普通方法求欧拉函数是一样的,只不过这是把求欧拉函数的过程写在了筛法的过程中。提高了效率。题目:The Euler functionTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su原创 2012-03-01 10:16:44 · 1309 阅读 · 0 评论 -
杭电 4165 卡特兰数
杭电热身赛第二场,,是一道裸的卡特兰数的题,题目:PillsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 54 Accepted Submission(s): 43Problem Descript原创 2012-03-03 19:29:21 · 1761 阅读 · 0 评论 -
杭电 2879 数论
题意比较简单,首先我们可以确定he(x)是积性函数。证明是比较容易的。由he函数的定义可以得出x*(x-1)=k*n这个式子。我们设x*(x-1)=k1*n1,x'*(x'-1)=k'*n';并设he(x)=a,he(x')=b;则he(x*x')=a*b。因为he(x)是积性函数,所以我们只需要把质数的he值算出来即可。这时,我们再观察,如果一个合数由不同的质数组成,如30=2*3*5,则he(原创 2012-03-05 23:46:31 · 910 阅读 · 0 评论 -
POJ 2891 Strange Way to Express Integers 非互质的中国剩余定理
来源:http://poj.org/problem?id=2891题意:有一个数x,x = r[i] (mod a[i]),其中a[i] 和 a[j] 不一定互质,求x的最小值。思路:很容易看到这题和中国剩余定理是有联系的。因为倘若任意的a[i] 和 a[j] 互质,则满足中国剩余定理。中国剩余定理还是好理解的,这里就不多说了,主要说一下不互质情况下如何转化为互质下的中国剩余定理。原创 2012-07-31 09:09:00 · 1564 阅读 · 0 评论