码迷,mamicode.com
首页 >  
搜索关键字:约数    ( 2560个结果
zoj 2526 反素数 附上个人对反素数性质的证明
反素数的定义:对于任何正整数,其约数个数记为,例如,如果某个正整数满足:对任意的正整             数,都有,那么称为反素数。 从反素数的定义中可以看出两个性质: (1)一个反素数的所有质因子必然是从2开始的连续若干个质数,因为反素数是保证约数个数为的这个数尽量小 (2)同样的道理,如果,那么必有 个人理解性证明: 对(1)假设不是从2开始,那么假设n的最...
分类:其他好文   时间:2014-08-24 01:51:41    阅读次数:294
CodeForces 358E - Dima and Kicks
dfs判断欧拉图,红名选手的代码就是炫酷。 首先统计所有点的度数总和,而后对于这张图的特殊性——每个点最多只会有四条边,来标记当前边是否走过了。 若在一次DFS中,能遍历所有的节点则输出所有边长的gcd的大于1的约数集。 真心学习了。#include #include #include #include #include #include #include #include ...
分类:其他好文   时间:2014-08-23 21:44:01    阅读次数:228
欧几里得求最大公约数
欧几里得算法(又称辗转相除法)定理:gcd(a,b) = gcd(a,a mod b)证明:对于任何正整数a,b。如果a>b,都有a=k*b+r 即r=a-k*b => r=a mod b. 假设d为a,b的公约数,则a=a1*d,b=b1*d。 而r=a1*d-k*b1*d=(a1-k*b1)*d...
分类:其他好文   时间:2014-08-22 00:09:15    阅读次数:287
hdu 4961 数学杂题
http://acm.hdu.edu.cn/showproblem.php?pid=4961 先贴个O(nsqrtn)求1-n所有数的所有约数的代码: vectordivs[MAXN]; void caldivs() { for(int i=1;i<MAXN;i++) for(int j=i;j<MAXN;j+=i) divs[j].push...
分类:其他好文   时间:2014-08-20 19:42:32    阅读次数:247
【Math】GCD XOR 证明
题目:Given an integer N, and how many pairs (A;B) are there such that: gcd(A;B) = A xor B where 1=2)是不同位数的。和同学讨论后得出如下证明:设最大公约数为 j, 假设这两个数是b 和 b+k*j,(k>....
分类:其他好文   时间:2014-08-19 23:50:55    阅读次数:233
【模版】素数筛, 最大公约数(辗转相除法),最小公倍数
素数筛: //数除了{2,3,5}为素数,其他的数可以写成6N,6N+1,6N+2,6N+3,6N+4,6N+5 N>=1 可以表示全部的数 //6N,6N+2,6N+4都为偶数,不是素数,6N+3 == 3(2N+1) 不是素数,那么就只筛6N+1和6N+5就可以了 int prime[1000000]={2,3,5}; void is_prime() { int i,j; ...
分类:其他好文   时间:2014-08-19 20:58:25    阅读次数:237
hdu 4961 Boring Sum
http://acm.hdu.edu.cn/showproblem.php?pid=4961先打个表,把每个数的约数存起来,然后从前往后扫一遍,结果存在f[i],然后从后往前扫一遍,结果存在c[i],最后算f[i]*c[i]的和。 1 #include 2 #include 3 #include.....
分类:其他好文   时间:2014-08-19 20:31:45    阅读次数:242
找新朋友(杭电1286)
/*找新朋友 Problem Description 新年快到了,“猪头帮协会”准备搞一个聚会,已经知道现有会员N人,把会员从1到N编号,其中会长的号码是N号,凡是和会长是老朋友的,那么该会员的号码肯定和N有大于1的公约数,否则都是新朋友,现在会长想知道究竟有几个新朋友?请你编程序帮会长计算出来。   Input 第一行是测试数据的组数CN(Case number,1   Outpu...
分类:其他好文   时间:2014-08-16 11:14:10    阅读次数:243
求两个数的最大公约数和最小公倍数
//3.输入两个数,求最大公约数和最小公倍数inta=0,b=0;printf("请输入两个数:");scanf("%d%d",&a,&b);intc=0,d=0;c=a>b?b:a;//求出两个数中较小的d=a>b?a:b;//求出两个数中较大的for(inti=c;i>0;i--){//从小的开始循环if((c%i==0)&&(d%i==0)){//除尽..
分类:其他好文   时间:2014-08-15 10:52:29    阅读次数:175
递归求最大公约数
import java.io.IOException;import java.util.Scanner;public class CommonDivisor { public static void main(String[] args)throws IOException{ t...
分类:其他好文   时间:2014-08-14 20:13:29    阅读次数:174
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!