码迷,mamicode.com
首页 >  
搜索关键字:公约数    ( 1610个结果
算法学习 - 欧几里得算法(辗转相除法)(c++实现)
欧几里得算法欧几里得算法也叫辗转相除法,是求两个整数最大公约数的算法。当然也可以求最小公倍数。算法实现其实算法的实现原理就是,有整数a b两个,每次求的一个数字r = a % b,然后把b放到a的位置,把r放到b的位置,递归调用。就是gcd(a, b) { return gcd(b, a%b); }这个样子的。结束条件是当 a%b == 0的时候停止。最大公约数// // main.cpp //...
分类:编程语言   时间:2015-03-28 01:13:58    阅读次数:243
51nod 1040 最大公约数之和 (数学)
给出一个n,求1-n这n个数,同n的最大公约数的和。比如:n = 6 1,2,3,4,5,6 同6的最大公约数分别为1,2,3,2,1,6,加在一起 = 15 Input1个数N(N <= 10^9)OutPut公约数之和Input示例6Output示例15AC代码:/** *@xiaoran *1 2 3 4 5 6 *1 2 3 2 1...
分类:其他好文   时间:2015-03-27 23:54:57    阅读次数:248
常见算法:C语言求最小公倍数和最大公约数三种算法
最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们的公倍数,当中一个最小的公倍数是他们的最小公倍数,相同地,若干个整数公有的倍数中最小的正整数称为它们的最小公倍数,维基百科:定义点击打开链接求最小公倍数算法:最小公倍数=两整数的乘积÷最大公约数求最大公约数算法:(1)辗转相除法有两整数a和b:...
分类:编程语言   时间:2015-03-21 11:13:44    阅读次数:149
JAVA基础编程50题(4-6题)详解
一、描述 1、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,输出之前的所有因子。 (2)如果n!=k,但n能被k整除,则应打印出k的值,并用n除以k的商作为新的正整数n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为...
分类:编程语言   时间:2015-03-19 18:23:36    阅读次数:194
GDUT决赛 我是好人
Problem F: 我是好人 Description 众所周知,我是好人! 所以不会出太难的题,题意很简单 给你两个数n和m,问你有多少对正整数对最大公约数是n,最小公倍数是m 最后友情提供解题代码(我真是太好人了) void solve() {    long long n, m;    scanf("%lld%lld", &n, &m)...
分类:其他好文   时间:2015-03-19 16:20:54    阅读次数:120
求出所有的正整数对 使他们最大公约数为n,最小公倍数为m
题目大概是这样的:点击打开链接 大意就是 求出所有的正整数对 使他们最大公约数为n,最小公倍数为m。(1 可以将问题转化为 : 设a,b就是那个整数对,n, a, b, m, 这4个数都是可以被n整除的,可以都除以n, 题目转化为求出 最大公约数为1, 最小公倍数为m/n的对数 。 也就是求出在1到m/n里 乘积为m/n且互质的对数。可以在O(sqrt (m/n) )内解决。 ...
分类:其他好文   时间:2015-03-18 21:50:50    阅读次数:188
辗转相除法求最大公约数
辗转相除法又名广义欧几里得除法,是用来求解两个数的最大公约数的最佳算法之一。 算法原理:...
分类:其他好文   时间:2015-03-18 16:03:58    阅读次数:139
广工校赛决赛之简单的数论题
题目链接:F: 我是好人,题目大意:给你两个数 n 和 m,问你有多少对正整数对最大公约数是n,最小公倍数是m。 因为1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #inclu...
分类:其他好文   时间:2015-03-17 21:31:13    阅读次数:178
关于lcm,gcd的一些性质
两个整数a,b  他们的最多公约数为n  最小公倍数为m  则有 a b都能分解为有限个素数的积n为a,b所有素因子取较小指数的积 2. 3.m为a,b所有素因子取较大指数的积 4.n中只含a,b的全部公共素因子 5.m中含有a,b的所有素因子 6.m/n中只含a,b的非公共素因子 7.n*m==a*b...
分类:其他好文   时间:2015-03-17 10:31:28    阅读次数:148
我是好人
Description 众所周知,我是好人!所以不会出太难的题,题意很简单 给你两个数n和m,问你有多少对正整数对最大公约数是n,最小公倍数是m最后友情提供解题代码(我真是太好人了)void solve(){long long n, m;scanf(“%lld%lld”, &n, &m);int ans = 0;for (long long i = 1; i <= m; i++){ for (l...
分类:其他好文   时间:2015-03-16 23:11:28    阅读次数:195
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!